美文网首页
KVO的原理

KVO的原理

作者: 向小暖_he | 来源:发表于2019-03-20 20:59 被阅读0次

    当你设置观察某个对象的属性时,一个新的类会被创建,该类继承自该类对象的原本的类,并重写了被观察属性的setter方法。重写的setter方法会负责在调用原setter方法之前和之后,通知所有观察对象:值的变化。

    最后通过isa(isa-swizzling)混写,把对象的isa指针指向新创建的子类,对象就神气的变成了新创建的类的实例。

    在重写的setter方法中,插入-willChangeValue: 和-didChangeValue: 两个方法,来做旧value的记录,以及新value改变的通知。

    代码后补。

相关文章

网友评论

      本文标题:KVO的原理

      本文链接:https://www.haomeiwen.com/subject/zcfxvqtx.html