欢迎使用CSDN-markdown编辑器
2016-05-13 10:26
246 查看
关于使用KVO监听数组
一.在第一次使用KVO监听数组的count的时候,我无论如何改变数组时,都无法进入到observeValueForKeyPath::这个方法,后来,当我百度后,才发现,kvo指针的变动,对于一些指针没有变动的属性是没办法监听到的.
比如当我们需要监听NSMutableArray的count属性时,直接增加或删除是无法监测到数组数量上的变化的.首先必须实现以下2条函数
//增加 - (void)insertObject:(id)object inDataSourceAtIndex:(NSUInteger)index{ [self.dataSource insertObject:object atIndex:index]; } //移除 - (void)removeObjectFromDataSourceAtIndex:(NSUInteger)index{ [self.dataSource removeObjectAtIndex:index]; } //还有其他方法看需求实现
然后,在执行增加或删除操作的时候使用mutableArrayValueForKey方法,以下是我在当前类中实现的属性
@property(nonatomic,strong) NSMutableArray *dataSource;
[[self mutableArrayValueForKey:@"dataSource"] addObject:@1]
这样 当数量变化时,也可以进行监测了,remove同理
相关文章推荐
- 汽车VIN码OCR识别
- python 异常处理
- linux php安装扩展方法 查找配置文件
- html引入jquery库
- 如何买笔记本电脑,从那几个方面看
- d3.js——文本换行的封装
- Css编译之Less入门
- IOS 控制台颜色
- solrcloud5.5集群下配置IK分词器
- mysql存在外键约束时导入
- lifeary 6.2 js 向后台不能正常传值
- QEMU-KVM中的多线程压缩迁移技术
- iOS远程推送原理及实现过程
- YJX_rxjh_12_2.5.4
- Heartbeat+LVS构建高可用负载均衡集群
- 外部主机不允许连接Mysql设置的解决方法
- 关于容器、框架、架构的一些概念(转载)
- 排列组合算法封装2
- Fragment与Activity通讯
- 后台获取前台表单数据