iOS-KVC

2018-12-04  本文已影响70人  KeepOnline

KVC(key Value Coding),俗称“键值编码”,通过一个key来访问某个属性

常见的API有:

- (void)setValue:(id)value forKey:(NSString *)key;
- (void)setValue:(id)value forKeyPath:(NSString *)keyPath;
- (id)valueForKey:(NSString *)key; 
- (id)valueForKeyPath:(NSString *)keyPath;

setValue:forKey:的原理

1.先查找相关set方法:setKey:_setKey:
2.方法未找到时,查找成员变量:_key_isKeykeyisKey

setValue代码片段(调用顺序即注释中的序号).png setValue forKey.png

valueForKey:的原理

1.先查找相关get方法:getKey:key:isKey_key
2.方法未找到时,查找成员变量:_key_isKeykeyisKey

valueForKey代码片段(调用顺序即注释中的序号).png valueForkey.png
上一篇 下一篇

猜你喜欢

热点阅读