当前位置: 首页 > news >正文

优秀电商设计网站小米新手机发布

优秀电商设计网站,小米新手机发布,代码型网页制作软件,软件开发流程的具体内容1、KVC介绍 1#xff09;、KVC是由NSKeyValueCoding协议提供支持最基本的属性和两个方法如下 setValue:属性值 forkey:属性名#xff1a;为指定属性设置值 valueForKey:属性名 #xff08;得到或者指定属性的值#xff09; 2#xff09;、当设置value为nil的时候、KVC是由NSKeyValueCoding协议提供支持最基本的属性和两个方法如下 setValue:属性值  forkey:属性名为指定属性设置值 valueForKey:属性名   得到或者指定属性的值 2、当设置value为nil的时候我们需要在类的实现里面重写setNilValueForKey方法不然会抛出NSInvalidArgumentException 2、key路径介绍 KVC除了操作对象的属性之外还可以操作对象的“复合属性”比如类里面的成员变量是对象然后给这个成员变量的对象进行赋值就这样简单理解赋值之前一定要记得把这个对象进行初始化操作 KVC协议中为操作Key路径的方法如下 setValue:forKeyPath:根据Key设置属性值 valueForKeyPath:根据key的路径获取属性值 2、测试简单Demo User.h#ifndef User_h #define User_h #import Foundation/Foundation.h interface User : NSObject property (nonatomic) NSString *name; property (nonatomic, strong) NSString *city; property (nonatomic, copy) NSString *add; property NSString *pass; property NSDate *birth; property NSDate *birth1; end #endif /* User_h */ User.m #import Foundation/Foundation.h #import User.himplementation User synthesize name _name; synthesize pass; synthesize birth; -(void) setName:(NSString *)name {self-_name [NSString stringWithFormat:hello%, name]; } end KVCPerson.h#ifndef KVCPerson_h #define KVCPerson_h #import Foundation/Foundation.h #import User.hinterface KVCPerson : NSObject property (nonatomic, copy) NSString *name; property (nonatomic, copy) NSString *pass; property (nonatomic, copy) NSDate *birth; property (nonatomic) int price; property (nonatomic) User *user; end #endif /* KVCPerson_h */ KVCPerson.m #import Foundation/Foundation.h #import KVCPerson.h implementation KVCPerson-(void)setNilValueForKey:(id)key {if ([key isEqualToString:price]){_price 0;}else{[super setNilValueForKey:key];} }end main.m #import UIKit/UIKit.h #import AppDelegate.h #import Person.h #import Apple.h #import User.h #import Args.h #import KVCPerson.h #import FKItem.h #import FKOrder.hint main(int argc, char * argv[]) {autoreleasepool {KVCPerson *person [KVCPerson new];[person setValue:chenyu forKey:name];[person setValue:1234 forKey:pass];[person setValue:[NSDate date] forKey:birth];NSLog(name is %, [person valueForKey:name]);NSLog(pass is %, [person valueForKey:pass]);NSLog(birth is %, [person valueForKey:birth]);NSLog(price is %, [person valueForKey:price]);[person setValue:nil forKey:name];[person setValue:nil forKey:price];NSLog(name is %, [person valueForKey:name]);NSLog(pass is %, [person valueForKey:pass]);NSLog(birth is %, [person valueForKey:birth]);NSLog(price is %, [person valueForKey:price]);[person setValue:[User new] forKeyPath:user];//在使用valueForKeyPath之前一定要记得把成员对象进行初始化不然直接设置无效[person setValue:hello forKeyPath:user.city];NSLog(user.city is%, [person valueForKeyPath:user.city]);} }3、运行结果 name is chenyu pass is 1234 birth is Fri Jul 6 22:39:34 2018 price is 0 name is (null) pass is 1234 birth is Fri Jul 6 22:39:34 2018 price is 0 user.city is hello  4、总结 在使用key的时候一定要记得先把成员属性的对象进行初始化不然设置无效如下 [person setValue:[User new] forKeyPath:user];//在使用valueForKeyPath之前一定要记得把成员对象进行初始化不然直接设置无效[person setValue:hello forKeyPath:user.city];NSLog(user.city is%, [person valueForKeyPath:user.city]); 而不是 [person setValue:hello forKeyPath:user.city];NSLog(user.city is%, [person valueForKeyPath:user.city]); 这样结果会是null
http://www.huolong8.cn/news/32781/

相关文章:

  • 淄博网站seo公司黄山旅游攻略2022
  • 商会网站模板网站设计发展趋势
  • 网站建设免费域名刚做的网站怎么知道有没有潜在的
  • 做网站为什么要备案做网贷网站多少钱
  • 建网站公司下载快手网站经营模式
  • 网站建设服务怎么样福州思企互联网站建设公司
  • 邯郸哪里可以学建网站陈村网站开发
  • 上海市网站seowordpress产品页面静态化
  • 做网站需要报备什么如何给网站添加cnzz
  • 如东网站建设哪家好北京市工程信息网
  • 网站建设原则包括哪些方面百度百科官网
  • wordpress 设置ftp怎么给网站做优化
  • 企业网站建设套餐费用《网站开发实例》pdf下载
  • 哪里有网站建设手机网站目录结构构建的原则是以
  • 成都网站建设公司汇总为什么不用wordpress
  • 长春网站推广公司百度排行榜风云榜小说
  • 河北城乡建设学校网站中国vs菲律宾世预赛
  • wordpress小说站企业网站建设作用
  • 企业网站建设的方案ppt群网站建设合同
  • 烟台市网站建设美橙极速建站系统
  • 网站建设如何把更改内容眼查看网站开发语言
  • 网站建设维护工作南昌地宝网二手车
  • 如何虚拟一个公司网站搭建WordPress教程
  • wordpress一小时建站网站建设优化收费
  • 网站首页的尺寸做多大微信开发人是谁
  • 陕西有色建设有限公司官方网站外贸添加外链网站
  • 南宁网站建设公司哪家专业百度云 wordpress 固定链接
  • 园岭中小网站建设网站建设基
  • 安全的集团网站建设揭阳有哪家网站制作公司
  • 南宁制作网站服务商一流的学校网站建设