iOS 底层原理探究

KVO(一)KVO的简单使用

2019-11-09  本文已影响0人  PerryMorning

在开发过程中,经常会对某一个值进行特定的处理,比如一个按钮是否被选中等等。这时候就会用到KVO。所谓KVO简单来讲,就是给需要被观察的对象添加一个观察者,当被观察对象的某个属性发生改变时,立马通知观察者执行相关操作的一种机制。

我们来看一个例子:加入我们要监听一个人的年龄变化,通常做法如下:

通过以上5步操作,在我们点击屏幕时,就会在- (void)observeValueForKeyPath:(NSString*)keyPath ofObject:(id)object change:(NSDictionary *)change context:(void*)context方法中得到如下结果:

当我们离开页面时,在dealloc方法中移除监听对象就可以了。

简单总结如下:

    1、创建对象;

    2、添加观察者,观察需要监听的对象属性值;

    3、当属性值发生改变时,在- (void)observeValueForKeyPath:(NSString*)keyPath ofObject:(id)object change:(NSDictionary *)change context:(void*)context方法中做处理;

    4、离开页面时,移除监听者。

这就是KVO最简单的使用过程,但是我们肯定不仅仅满足于如何使用KVO,想要探究在KVO背后,究竟发生了什么,且看下篇文章。

上一篇 下一篇

猜你喜欢

热点阅读