KVC

字数 115阅读 7
  • KVC的全称是Key-Value Coding,俗称“键值编码”,可以通过一个key来访问某个属性。
  • 常见的API有:
- (void)setValue:(id)value forKeyPath:(NSString *)keyPath;
- (void)setValue:(id)value forKey:(NSString *)key;
- (id)valueForKeyPath:(NSString *)keyPath;
- (id)valueForKey:(NSString *)key; 
setValue:forKey:的原理.png

valueForKey-的原理.png
  • 通过KVC修改属性触发KVO:KVC在赋值的时候会进行方法的调用,首先调用(_setKey,setKey方法),如果没有set方法,则直接内部自己调用设置属性(key,_key),内部调用了willChangeValueForKey和didChangeValueForKey,会触发KVO。

推荐阅读更多精彩内容

  • KVO: KVO的全称是Key-Value Observing,俗称“键值监听”,可以用于监听某个对象属性值的改变...
  • Key-value coding (KVC) 和 key-value observing (KVO) 是两种能让我...
  • KVC(Key-value coding)键值编码,单看这个名字可能不太好理解。其实翻译一下就很简单了,就是指iO...
  • 【原创博文,转载请注明出处!】之前做iOS开发的时候经常使用KVO来监听对象属性值的变化去执行一些操作,但是从未思...
  • 在谈论KVO和KVC之前,先引出几个问题 问题一:iOS用什么方式实现KVO,你可以理解成KVO本质是什么? 1....