属性观察器控制和响应属性的变化,当属性被设置的时候回调用属性观察器,主要有以下几个特点:
- 属性改变之前触发
willSet
方法,属性改变之后触发didSet
方法- 在给属性添加观察者之前必须要明确申明属性的类型,否则编译器会报错
- 属性初始化时,
willSet
和didSet
都不会调用,只有在设置属性值时才会调用- 当设置的值和原来的值一样时,
willSet
和didSet
也会被调用
willSet
有一个newValue参数,,,didSet
有一个oldvalue参数 代码示例如下:var age:Int = 18{ didSet{ print("didSet \(oldValue)") } willSet{ print("willSet \(newValue)") } }
/** * age重新赋值并打印 */ age = 10; print(" \(age)") age = 100 print(" \(age)") age = 200 print(" \(age)") age = 18 print(" \(age)")
来张打印图直视一下结果吧~~~
小菜鸟进阶中。。。。。有问题欢迎讨论指教
~。。。。。 闪人咯,时间留给你自己玩。。。。。
作者:茶茶茶茶花
链接:http://www.jianshu.com/p/1612161b3906
來源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
swift之属性观察 (willSet和didSet)
最新推荐文章于 2023-03-28 15:39:03 发布