属性监视器
1、属性监视器功能
属性观察器控制和响应属性的变化,每次属性被设置值的时候会调用属性观察器,甚至新的值和旧的值相同的时候也不例外。
可以通过重载属性的方法为继承的谁能够(包括存储属性和计算属性)添加属性观察器
注意:不需要为无法重载的计算属性添加属性观察器,因为可以通过setter直接监控和响应值的变化
2、属性监视器方法
1.willSet
介绍:illSet观察器会将新的属性值作为固定参数传入,在willSet的事项代码中可以为这个参数指定一个名称,如果不指定则参数默认名称用newValue表示
2.didSet
功能:didSet观察器会将旧的属性值作为参数传入,参数默认名称为: oldValue
3、注意
1、willSet和didSet观察器在属性初始化过程中不会被调用,它们只会当属性的值在初始化之外的地方被设置时被调用
2、如果在didSet观察器里为属性赋值,这个值会替换观察器之前设置的值。
4、代码范例
class Person: NSObject { // 年龄 属性 var age: Int? // 姓名 属性 var name: String? { willSet{ println("willSet") } didSet{ println("didSet") } } }原文链接:https://www.f2er.com/swift/327139.html