1、跟着 我们需要将这个数组 初始化 并且 赋予监听
testArray = [NSMutableArray array];
[self addObserver:self forKeyPath:@"testArray" options:NSKeyValueObservingOptionNew|NSKeyValueObservingOptionOld context:nil];
其中 forKeyPath 就是 你定义的这个数组的名字
跟着这个数组 添加 对象 和 删除对象的方式 跟平时用的有点不一样
3.1、添加
[[self mutableArrayValueForKey:@"testArray"] addObject:@"1"];
1
3.2、删除
[[self mutableArrayValueForKey:@"testArray"] removeObject:@"1"];
1
ok 我们有了添加和删除
4、那么可以在 监听的代理方法里面 做你想要做的处理了
-(void)observeValueForKeyPath:(NSString *)keyPath ofObject:(id)object change:(NSDictionary<NSString *,id> *)change context:(void *)context
{
if ([keyPath isEqualToString:@"testArray"])
{
NSLog(@"%@", testArray);
}
}
网友评论