iOS如何正确删除观察者

时间:2014-02-26 14:57:05

标签: ios

我试图弄清楚如何移除以下观察者:

[self.messageInputView.textView addObserver:self
                                 forKeyPath:@"contentSize"
                                    options:NSKeyValueObservingOptionNew
                                    context:nil];

我想用dealloc方法清理它。

我试过了:

[[NSNotificationCenter defaultCenter] removeObserver:self];

但这似乎没有。

有什么想法吗?

3 个答案:

答案 0 :(得分:4)

那是因为您没有将自己添加为NSNotificationCenter的观察者。尝试: [self.messageInputView.textView removeObserver:self forKeyPath:@"contentSize"]

答案 1 :(得分:0)

试试这个[self.messageInputView.textView removeObserver:self forKeyPath:@"contentSize" context:nil];

答案 2 :(得分:0)

要删除观察者,请使用此

[[NSNotificationCenter defaultCenter] removeObserver:self forKeyPath:@"contentSize"];

您需要将此代码放在控制器的ViewDidUnload方法中