2014-02-26 34 views
2

我试着去弄清楚如何删除以下观察:的iOS如何正确删除观察者

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

我要清理它在我的dealloc方法。

我已经试过:

[[NSNotificationCenter defaultCenter] removeObserver:self]; 

但是,这似乎并没有做到这一点。

任何想法?

+2

你添加一个键值观察员,这是你的ViewDidUnload方法不同于'NSNotification'观察者。 – Gavin

回答

4

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

0

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

0

对于删除的观察者使用该

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

而且你需要把这个代码在你的控制器