本文主要将kvc的原理和使用,所以其他文章中的内容可能有删减,我只放我觉得应该放入的内容,其他内容请看原文。
首先将引用文章的地址贴出来:kvc原理
kvc在项目中主要使用点:
(1)通过键值路径为对象的属性赋值。主要是可以为私有的属性赋值。
AppleViewController *appleVC = [[AppleViewController alloc]init];
[appleVC setValue:@"橘子" forKey:@"name"];
如果对象A的属性是一个对象B,要设置对象B的属性
[person setValue:@"旺财" forKeyPath:@“dog.name"];
(2)通过键值路径获取属性的值。主要是可以通过key获得私有属性的值。
NSString *nameStr = [appleVC valueForKey:@"name"];
也可以通过keypath获得值
NSString *dName = [person valueForKeyPath:@"dog.name"];
(3)将字典转型成Model,方法:setValues:ForKeysWithDictionary:
(4)用KVC来访问和修改私有变量