Swift内置简单类型与懒加载属性详解
1. 懒加载属性
在Swift中,懒加载属性是一种特殊的属性,它在第一次被访问时才会进行初始化。例如下面的代码,如果 arrow 属性没有被声明为 lazy ,那么这段代码将是非法的,因为不能在实例属性初始化器中调用实例方法:
class MyView : UIView {
lazy var arrow = self.arrowImage()
func arrowImage () -> UIImage {
// ... big image-generating code goes here ...
}
}
另一种常见的用法是使用定义并调用的匿名函数来初始化懒加载实例属性,其代码可以引用 self :
lazy var prog : UIProgressView = {
let p = UIProgressView(progressViewStyle: .default)
p.alpha = 0.7
p.trackTintColor = UIColor.clear
p.progressTintColor = UIColor.black
p.frame = CGRect(x:0, y:0, width:self.view.bounds.size.width, height:20)
p.progress = 1
超级会员免费看
订阅专栏 解锁全文
8

被折叠的 条评论
为什么被折叠?



