如题,最近一直在困惑两种属性的声明方式的比较的优劣
code1 :
class MyViewController : UIViewController {
var button:UIButton!
override func viewDidLoad() {
super.viewDidLoad()
self.button = UIButton()
// .... 其他的配置
}
}
code2 :
class MyViewController : UIViewController {
lazy var button:UIButton = UIButton()
override func viewDidLoad() {
super.viewDidLoad()
// 配置
self.button.setImage....
}
}
code1用的强制解包,code2用的lazy
哪种方式更好呢?
lazy就是延时加载
用到时再去初始化~
iOS还是推荐用Storyboard 所以不用自己控制
但是 控件 不是 很重的东西 而且由于生命周期事件 的存在 不推荐用lazy方式加载
只有重量级 的 资源大户 采用这种方式