setValue: forKeyPath: 与 setValue: forKey: 区别
2016-09-06 14:59
453 查看
KVC是Key Value Coding的缩写,意思是键值编码。在iOS中,提供了一种方法通过使用属性的名称(也就是Key)来间接访问对象的属性方法。
相信有人肯定对 setValue: forKeyPath: 与 setValue: forKey: 这两个方法有所不接,这两个方法同属于nsobject(Key Value Coding) 的类扩展方法 根据苹果官网的说的是:
object a
意思是:setValue: forKeyPath: 的底层实现还是使用的了 setValue: forKey: 方法。
setValue: forKeyPath:方法是 the default behavior is for that object to retain value rather than copy or assign value. 区别是保留值而不是复制或赋值
相信有人肯定对 setValue: forKeyPath: 与 setValue: forKey: 这两个方法有所不接,这两个方法同属于nsobject(Key Value Coding) 的类扩展方法 根据苹果官网的说的是:
Discussion
The default implementation of this method gets the destination object for each relationship usingvalueForKey:, and sends the final
object a
setValue:forKey:message.
Special Considerations
When using this method, and the destination object does not implement an accessor for the value, the default behavior is for that object to retainvaluerather than copy or assign
value.
Availability
Available in OS X v10.3 and later.意思是:setValue: forKeyPath: 的底层实现还是使用的了 setValue: forKey: 方法。
setValue: forKeyPath:方法是 the default behavior is for that object to retain value rather than copy or assign value. 区别是保留值而不是复制或赋值
相关文章推荐
- KVC setvalue:forkey与setvalue:forkeypath的区别
- KVC setvalue:forkey与setvalue:forkeypath的区别
- setValue:ForKeyPath
- setValueForKeyPath理解。访问设置对象的属性的话可以使用setValue forKey 访问属性的属性forKeyPath
- iOS开发66-setValue:forKey:和 setObject:forKey:的区别
- ios-day06-03(UITableView的索引条、一个对象作为另一个对象的属性、valueForKey和valueForKeyPath的区别)
- setValue forKey与setObject forKey的区别
- iOS开发中setObject:ForKey和setValue:ForKey的用法和区别
- Objective-c setObject:forKey:和setValue:forKey:的区别
- setObject:ForKey:与setValue:ForKey:存值区别与联系
- Objective-c setObject:forKey:和setValue:forKey:的区别
- setObjectForKey和setValueForKey的用法和区别
- kvc和字典在创建键值对时的相同与区别(setValue forKey )(setObject forKey)
- setValue forKey和setObject forKey的区别
- setObject:ForKey:与setValue:ForKey:的区别与联系
- KVO 接收变更通知 observeValueForKeyPath:ofObject:change:context:
- 从[id setValue: forKey:]了解KVC
- ViewController 0x8f35e00> setValue:forUndefinedKey:]: this class is not key value coding-compliant f
- 轻量级KVO ——》 KVO 管理 observeValueForKeyPath
- setValue:forKey与setObject:forKey的差异 在使用NSMutableDictionary的时候经常会使用setValue forKey与setObject forKey,他