KVC

k v c

pragma mark KVC---key value coding 键值编码

// kvc就是给类中的属性赋值
Teacher *tec = [[Teacher alloc]initWithName:@"liuxing" age:23 sex:@"M"];
NSLog(@"===%@",tec.name);
// 键值对赋值法
[tec setValue:@"w" forKey:@"sex"];
NSLog(@"%@",tec.sex);

// 通过key获取属性对应的值
[tec valueForKey:@"sex"];
NSLog(@"%@",tec.sex);

    [tec setValue:@"zhansan" forKey:@"name"];
    NSLog(@"%@",tec);

// 设置student属性的值
Student *stu = [[Student alloc]init];
[tec setValue:stu forKey:@"stu"];//属性名

     stu.name = @"haha";
    tec.student.name =@"haha";

// 通过路径赋值
[tec setValue:@"haha" forKeyPath:@"student.name"];//属性的路径

// 通过路径获取值
NSString *path= [tec valueForKeyPath:@"stu.name"];

//用字典来设置多个属性的值
NSDictionary *dic = [NSDictionary dictionaryWithObjectsAndKeys:@"name",@"liuxing",@"sex",@"M", nil];

    [tec setValuesForKeysWithDictionary:dic];//常用的方法,这个方法我们要自己在.m中去实现
    [tec setValue:@"123" forKey:@"name2"];
   NSLog(@"字典获取值 = %@",tec);
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 首先理清思路 kvc取值时,需注意的几点问题; 讲解一下kvc各种问题,包括基础属性赋值,属性对象的属性赋值,私有...
    magicMushroom阅读 1,614评论 1 8
  • KVC(Key-value coding)键值编码,单看这个名字可能不太好理解。其实翻译一下就很简单了,就是指iO...
    朽木自雕也阅读 1,621评论 6 1
  • KVC:Key Value Coding,键值编码,是一种间接访问实例变量的方法。 KVC 提供了一个使用字符串(...
    iOS小吴阅读 2,915评论 0 5
  • 1.KVC key value coding 我们一般是通过调用set方法或属性的点语法来直接更改对象的状态,即对...
    solozyx阅读 199评论 0 0
  • KVC(Key-value coding)键值编码,单看这个名字可能不太好理解。其实翻译一下就很简单了,就是指iO...
    黑暗中的孤影阅读 50,104评论 74 441