美文网首页
IOS 开发KVC

IOS 开发KVC

作者: 未_漆小七 | 来源:发表于2018-01-16 16:44 被阅读0次

kvc

    也就是key-value-coding,即键值编码,通常是用来给某一个对象的属性进行赋值.

用法:

    1.对私有变量进行赋值

    2.字典转模型

注意事项:

    1.字典转模型的时候,字典中的某一个key一定要在模型中有对应的属性

    2.如果一个模型中包含了另外的模型对象,是不能直接转化成功的。

    3.通过kvc转化模型中的模型,也是不能直接转化成功的。

Lock *lock = [[Lock alloc] init];

lock.name = smart_lock;

lock.password = 000000;

假如name是私有变量,就无法外部赋值,kvc可以做到,如下:

[lock setValue:@“smart_lock1” forKey:@"name"];

or

[lock setValue:@“smart_lock1” forKeyPath:@"name"];

区别呢?---》

LockBluetooth *bluetooth = [[LockBluetooth alloc] init];

lock.ble =  bluetooth ;

又是私有变量

[lock setValue:@"aa:bb:cc:dd:ee:ff" forKeyPath:@"ble.mac"];

    说明对某一个属性进行赋值,可以不用加下划线,而且它的查找规则应该是:先查找和直接写入的字符串相同的成员变量,如果找不到就找以下划线开头的成员变量。

    kvc除了访问私有变量这个用处外,还可以用于字典转模型。在Person类对外提供一个接口,将转模型的工作放在模型中进行

- (instancetype)initWithDict:(NSDictionary*)dict{

    if(self = [super init]) {

        [self setValuesForKeysWithDictionary:dict];

    }

    return self;

}

调用:

NSDictionary*PersonDict = @{@"name":@"smart_lock1",@"password":@"000000"}; Lock *lock1 = [Lock personWithDict:lock];

相关文章

  • KVC

    iOS 如何使用KVC iOS开发UI篇—Kvc简单介绍 iOS开发系列--Objective-C之KVC、KVO

  • iOS开发技巧系列---详解KVC(我告诉你KVC的一切)

    iOS开发技巧系列---详解KVC(我告诉你KVC的一切) iOS开发技巧系列---详解KVC(我告诉你KVC的一切)

  • KVC

    KVC原理剖析 - CocoaChina_让移动开发更简单 iOS开发底层细究:KVC和KVO底层原理 | iOS...

  • 面试题知识点梳理

    重点KVC、KVOGCDRuntime iOS开发之Runtime——面试解析runloopBlock iOS开发...

  • iOS KVC与 KVO详解

    我们先看KVC KVC KVC(Key-value coding)键值编码,就是指iOS的开发中,可以允许开发者通...

  • iOS KVC和KVO详解

    KVC KVC定义 KVC(Key-value coding)键值编码,就是指iOS的开发中,可以允许开发者通过K...

  • iOS KVC和KVO详解

    KVC KVC定义 KVC(Key-value coding)键值编码,就是指iOS的开发中,可以允许开发者通过K...

  • iOS KVO和KVC详解

    KVC KVC定义 KVC(Key-value coding)键值编码,就是指iOS的开发中,可以允许开发者通过K...

  • iOS KVC和KVO详解

    KVC KVC定义 KVC(Key-value coding)键值编码,就是指iOS的开发中,可以允许开发者通过K...

  • KVC 和 KVO

    iOS-KVC和KVO精炼讲解(干货)KVC 和 KVOiOS开发系列--Objective-C之KVC、KVO细...

网友评论

      本文标题:IOS 开发KVC

      本文链接:https://www.haomeiwen.com/subject/aqasoxtx.html