不会
删除为阵列控制器添加的观察器。添加代码:
[self.arrayController addObserver:self
forKeyPath:@"selectionIndexes"
options:NSKeyValueObservingOptionNew
context:nil];
删除观察器的代码:
@try {
//[self removeObserver:self forKeyPath:@"selectionIndexes"];
[self.arrayController removeObserver:self forKeyPath:@"selectionIndexes"];
}
@catch (NSException *exception) {}
即使在删除观察者之后,它也没有效果,并且observeValueForKeyPath
正在被调用。我在这里做错了什么?
您可能添加了多个观察者。尝试在 addObserver:forKeyPath:options:context 行设置断点,看看它的调用次数是否多于 removeObserver:forKeyPath 行。