kvo
2017-04-11 10:52:25 0 举报
KVO(Key-Value Observing)是一种基于键值对的观察机制,它允许一个对象监听另一个对象的特定属性值的变化。当被观察对象的属性值发生变化时,观察者会收到通知并执行相应的操作。这种机制在 iOS 开发中非常常见,用于实现模型与视图之间的数据绑定、状态监控等功能。 KVO 的主要优点是简单易用,可以方便地实现对象间的通讯和同步。但是,它也存在一定的局限性,例如无法检测到属性值的增量变化、可能导致循环引用等问题。因此,在使用 KVO 时需要注意避免这些问题的发生。
作者其他创作
大纲/内容
否
移除tracker并清空所有观察者
生成tracker关联对象并为tracker创建映射结构
tracker映射表中该key下观察者是否已被全部释放
移除对该key的观察
移除该key下的该观察者
观察对象移除
生命周期变化
是
通知所有观察该key的对象
tracker是否存在该keypath下的观察者
被观察者是否绑定tracker
在映射表这添加观察对象
收到被观察者通知
添加kvo
tracker是否已观察该keypath
开始
tracker添加观察该keypath
被观察者dealloc
0 条评论
回复 删除
下一页