ios中kvo/kvc注意事项
来源:互联网 发布:域名不能备案怎么办 编辑:程序博客网 时间:2024/06/05 02:10
关于KVO/KVC的作用主要为监听类中属性的值的变化。
至于如何使用,在此不多做介绍,网上很多教程。在此主要说说需要注意的地方。
比如我们添加对一个属性的监听:
//开启kvo/kvc模式,当userinfo中(todaySinging)签到属性发生变化时及时更改标签显示 [[UserInfo sharedUserInfo] addObserver:self forKeyPath:@"todaySigning" options:NSKeyValueObservingOptionNew | NSKeyValueObservingOptionOld context:NULL];
当[UserInfo sharedUserInfo]中的属性todaySigning的值发生变化时,会触发:
- (void)observeValueForKeyPath:(NSString *)keyPath ofObject:(id)object change:(NSDictionary *)change context:(void *)context{ [self showOrHideViewWithIssued]; //当更改了当前是否签到的值时,重新设置按钮和标签的显示}
我们现在来改变属性值:
[UserInfo sharedUserInfo].todaySinging = @"1"; //1
[[UserInfo sharedUserInfo] setValue:@"1" forKey:@"todaySigning"]; //2
[[UserInfo sharedUserInfo] setValue:@"1" forKey:@"TodaySigning"]; //3
以上3句代码都能完成更改属性值,但值得一提的是,1和2在改变属性值的同时会触发KVO/KVC,而3由于key的首字母是大写,与属性名的首字母不匹配,所以不会触发KVO/KVC
0 0
- ios中kvo/kvc注意事项
- iOS中KVC和KVO
- iOS 中KVO和KVC的使用
- iOS中KVO,KVC的学习记录
- IOS中KVC和KVO理解
- iOS中KVO,KVC的学习记录
- iOS中KVC 和 KVO 简单介绍
- iOS开发中KVO & KVC的使用
- IOS中关于KVC与KVO知识点
- iOS中KVC与KVO的区别
- iOS 中KVC、KVO使用和介绍
- iOS 中KVC、KVO、NSNotificat…
- iOS中KVC与KVO的区别
- ios学习--kvo/kvc
- iOS KVC KVO KVB
- iOS KVO & KVC
- iOS KVC KVO KVB
- iOS kvc kvo 理解,
- 【C++ Primer每日一刷之七】指针操作
- poj 1631 || hdu 1950 Bridging signals(动态规划:LIS)
- EBS 学习笔记 wsh_delivery_details_pub.update_shipping_attributes 使用
- Qt中close和closeEvent
- 内核中的kmalloc函数详解
- ios中kvo/kvc注意事项
- 菏泽10路公交车
- UITableView的registerClass forCellReuseIdentifier用法详解
- Linux下的lds链接脚本简介(四)
- LOGO创意-IT行业-随记
- 菏泽11路公交车
- 正则表达式后向引用详解(扩展正则表达式功能)
- Java Web 三层架构详解
- 让他色发色纺诉讼费