kvc,即
:key-value coding,
它是一種使用字串識別符號,間接訪問物件屬性的機制,它是很多技術的基礎。
主要的方法就兩個,setvalue:forkey,valueforkey
在programming guide中說,使用kvc可以簡化**,但事實上使用起來,還是要看具體情況。
**例項:
1.首先定義兩個datamodel,這種datamodel定義是無法訪問屬性的
[cpp]view plain
copy
@inte***ce bookdata : nsobject
@end
@implementation bookdata
@end
[cpp]view plain
copy
@inte***ce authordata : nsobject
@end
@implementation authordata
@end
2.
使用kvc
[cpp]view plain
copy
bookdata * book1 = [[bookdata alloc] init];
[book1 setvalue:@"english"
forkey:@
"bookname"
];
[book1 setvalue:@"20.0"
forkey:@
"price"
];
authordata * author1 = [[authordata alloc] init];
[author1 setvalue:@"tom"
forkey:@
"name"
];
[book1 setvalue:author1 forkey:@"author"
];
nslog(@"value=%@"
,[book1 valueforkey:@
"bookname"
]);
nslog(@"price=%f"
,[[book1 valueforkey:@
"price"
] floatvalue]);
nslog(@"author=%@"
,[book1 valueforkeypath:@
"author.name"
]);
[book1 release];
3.注意事項,在使用的時候,key值不能寫錯(屬性的名字)。
KVC的使用介紹
利用kvc進行簡單賦值 利用kvc進行綜合賦值 利用kvc修改類的私有成員變數 uipagecontrol 字典轉模型 取值把模型轉成字典 取出陣列中所有模型的某個屬性值 利用kvc進行簡單賦值 void test 利用kvc進行綜合賦值 void test2 利用kvc修改類的私有成員變數 uip...
margin的使用方法與技巧
1.margin還可以用來做平移,作用類似translate哈哈。將元素設成absolute後就可以用margin隨便平移他了,既不像relative那樣要霸佔空間,又不用為父元素設定relative,還可以和top,left,right,bottom組合使用 2.當為div設定padding後有些...
xshell與docker的使用方法
安裝筆記,雖有些凌亂,後續會繼續整理 xshell的安裝 xftp的安裝 xftp檔案傳輸軟體。xshell的使用 參考新建容器sl v tmp tmp 將目錄與張飛伺服器掛載 便於傳檔案。00代表系統id前兩位。容器sl具有使用xftp傳輸檔案功能 docker的安裝 或者 檢視映象 docker...