IOS开发笔记之KVC与KVO的区别

2016-09-06  本文已影响0人  一只小猪的360

键值编码KVC

可以利用字符串的方式去动态控制一个对象。其实由于OC的语言特性,你根部不必进行任何操作就可以进行属性的动态读写,这种方式就是Key Value Coding(简称KVC)。

KVC的操作方法由NSKeyValueCoding协议提供,而NSObject就实现了这个协议,也就是说ObjC中几乎所有的对象都支持KVC操作,常用的KVC操作方法如下:

动态设置:

动态读取:

注意:

键值监听KVO

KVO其实是一种观察者模式,利用它可以很容易实现视图组件和数据模型的分离,当数据模型的属性值改变之后作为监听器的视图组件就会被激发,激发时就会回调监听器自身。在ObjC中要实现KVO则必须实现NSKeyValueObServing协议,不过幸运的是NSObject已经实现了该协议,因此几乎所有的OC对象都可以使用KVO。

在ObjC中使用KVO操作常用的方法如下:

KVO的使用步骤也比较简单:

上一篇 下一篇

猜你喜欢

热点阅读