簡介:
KVC是一種可以直接通過字符串的名字(key)來訪問類屬性的機制芍碧。而不是通過調用Setter煌珊、Getter方法訪問。
當使用KVO泌豆、Core Data定庵、CocoaBindings、AppleScript(Mac支持)時踪危,KVC是關鍵技術蔬浙。
Set
setValue: forkey:// 只能給對象的直接屬性賦值
setValue:forKeyPath: //可以給對象的間接屬性賦值。多層賦值, 推薦使用
Get
valueForKey: //獲取單個值
valueForKeyPath: //獲取多層值
dictionaryWithValuesForKeys://模型轉字典
獲取數組中的對象:
運算符:
字典轉模型
注意點:
1.如果想使用KVC進行字典轉模型, 那么字典中的key必須和模型中的屬性一模一樣(個數 + 名稱)否則會報錯:this class is not key value coding-compliant for the key score.
2.如果使用KVC進行字典轉模型, 只能對當前調用KVC方法的對象進行轉換, 不能對它的屬性的對象進行轉換贞远,意思就是說:對象中的對象無法轉換畴博,需要另行進行手動轉換,再次處理
setValuesForKeysWithDictionary: