代码改变世界

iOS开发_kvc&kvo

2015-08-04 00:30  圆圆的月亮在地上  阅读(143)  评论(0编辑  收藏  举报

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

2.setValue:属性值 forKeyPath:属性路径,可以简化书写

3.在ObjC中要实现KVO则必须实现NSKeyValueObServing协议,不过幸运的是NSObject已经实现了该协议,因此几乎所有的ObjC对象都可以使用KVO

4.KVO其实是一种观察者模式,利用它可以很容易实现视图组件和数据模型的分离,当数据模型的属性值改变之后作为监听器的视图组件就会被激发,激发时就会回调监听器自身