码迷,mamicode.com
首页 > 其他好文 > 详细

KVO底层实现原理

时间:2018-01-08 01:02:09      阅读:168      评论:0      收藏:0      [点我收藏+]

标签:系统   子类   change   eva   底层实现   pos   添加   指针   nbsp   

技术分享图片

首先:添加观察着对象的时候,干了啥事呢?系统创建了一个字类名为:NSKVONotifing_父类,并且重写了被观察者对象的监听属性的setter方法,setter方法里面又重写了

父类的setter方法,同时ISA指针指向了子类,当后面更改属性值的时候,即person.height = 181是相当于son.height = 181,由于里面重写了父类的setter方法,故先调用了willchange方法,记录old属性,然后更改了height的值,然后调用oberserveValueForKey方法,传递旧值和新值.

 

KVO底层实现原理

标签:系统   子类   change   eva   底层实现   pos   添加   指针   nbsp   

原文地址:https://www.cnblogs.com/yiyuanchenfeng/p/8232930.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!