k
vc ——
key value coding
1.字典轉模型
= dic[@"answer"];
= dic[@"icon"];
= dic[@"title"];
= dic[@"options"];
//kvc 把字典中的值,賦給當前物件制定的屬性(@"answer")
[self setvalue:dic[@"answer"] forkeypath:@"answer"];
//遍歷字典中所有的key,並把和物件屬性對應的key 賦值
[self
setvaluesforkeyswithdictionary
:dic];
2.kvc設定與取出值
blperson
*person = [[
blperson
alloc
] init
];//kvc設定值
[person
setvalue
:@"zs"
forkeypath
:@"name"
];[person
setvalue
:@18
forkeypath
:@"age"
];//kvc取值
[person
valueforkeypath
:@"name"
];[[person
valueforkeypath
:@"age"
] intvalue
];//把物件轉成字典,(可能要儲存到plist中)
nsdictionary
*dic = [person
dictionarywithvaluesforkeys:@[
@"name"
,@"age"]]
3.kvc與陣列
blperson
*p1 = [[
blperson
alloc
] init
];p1.
name
= @"zs"
;p1.
age
= 18;
blperson
*p2 = [[
blperson
alloc
] init
];p2.
name
= @"ls";
p2.age
= 19;bl
person
*p3 = [[
blperson
alloc
] init
];p3.
name
= @"ww"
;p3.
age
= 16
;nsarray
*persons =
@[p1,p2,p3];
//取出陣列中所有人的名字
//方法1 迴圈 取出
//方法2
nsarray
*names = [persons
valueforkeypath
:@"name"];
4.kvc
多級key
path
blperson
*p1 = [[
blperson
alloc
] init
];p1.
name
= @"zs"
;p1.
age
= 18;bl
book
*book = [[
blbook
alloc
] init
];book.
name
= @"金瓶梅"
;p1.
book
= book;
//根據person獲取book的名字
//1[p1.
book
valueforkeypath
:@"name"
];//2
//nsstring *name = p1.book.name;
//3 區分大小寫
nsstring
*name = [p1
valueforkeypath
:@"book.name"
];
iOS開發系列 UI基礎 KVC
這些知識是ui初級學習的,目前我還在學習中,適合初學者看 kvc key value coding 也就是鍵值編碼 是一種獲取值和設定值的方式 當我們建立乙個類檔案,為這個類設定成員屬性的時候 建立乙個 人 類 有名字 name 年齡 age 兩個公有的成員屬性 因為使用 property關鍵字,會...
IOS開發UI基礎之綜合應用
好處 inte ce viewcontroller property nonatomic,strong nsarray shops end implementation viewcontroller 重寫getter方法 nsarray shops return shops end 獲取plist檔...
IOS開發UI基礎 倒影
1.用複製圖層實現,搞個uiimageview展示,然後複製uiimageview.2.注意 複製圖層只能複製子層,但是uiimageview只有乙個主層,並沒有子層,因此不能直接複製uiimageview.3.正確做法 應該把uiimageview新增到乙個uiview上,然後複製uiview的層...