iOS 监听数组的变化
1、首先我们有一个 testArray 这个数组需要监听 里面的 数据变化
NSMutableArray *testArray;
2、跟着 我们需要将这个数组 初始化 并且 赋予监听
testArray = [NSMutableArray array];
[self addObserver:self forKeyPath:@"testArray" options:NSKeyValueObservingOptionNew|NSKeyValueObservingOptionOld context:nil];
其中 forKeyPath 就是 你定义的这个数组的名字
跟着这个数组 添加 对象 和 删除对象的方式 跟平时用的有点不一样
3.1、添加
[[self mutableArrayValueForKey:@"testArray"] addObject:@"1"];
3.2、删除
[[self mutableArrayValueForKey:@"testArray"] removeObject:@"1"];
ok 我们有了添加和删除
4、那么可以在 监听的代理方法里面 做你想要做的处理了
-(void)observeValueForKeyPath:(NSString *)keyPath ofObject:(id)object change:(NSDictionary<NSString *,id> *)change context:(void *)context
{
if ([keyPath isEqualToString:@"testArray"])
{
NSLog(@"%@", testArray);
}
}
声明:该文观点仅代表作者本人,牛骨文系教育信息发布平台,牛骨文仅提供信息存储空间服务。
- 上一篇: 正则表达式取特定字符串中间部分内容
- 下一篇: 【Centos 7】使用screen恢复终端连接