swift 使用匿名函数初始化属性
匿名函数格式:
{
//代码体
}()
大括号是定义函数体的,小括号()是调用函数体的。
为什么不写一个函数然后调用函数呢?为何用匿名函数呢?
主要还是代码的简洁性.
举个????
private lazy var guideScrollView: UIScrollView = {
let view = UIScrollView.init()
view.backgroundColor = UIColor.lightGray
view.bounces = false
view.isPagingEnabled = true
view.showsHorizontalScrollIndicator = false
view.delegate = self
return view
}()
上述代码简单清晰明了,如果使用函数,要先写一个函数,然后再去调用,麻烦许多,代码也不明朗。
当时,你也可以使用闭包来这样初始化
private lazy var guideScrollView = { ()-> UIScrollView in
let view = UIScrollView.init()
view.backgroundColor = UIColor.lightGray
view.bounces = false
view.isPagingEnabled = true
view.showsHorizontalScrollIndicator = false
view.delegate = self
return view
}