【发布时间】:2011-12-29 08:38:05
【问题描述】:
在我的一个视图控制器中,它将自己添加为 UITextViewTextDidEndEditingNotification 通知的观察者,如下所示
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(done:) name:UITextViewTextDidEndEditingNotification object:nil];
现在我想知道 - 当视图控制器被释放时,我是否需要执行以下操作
[[NSNotificationCenter defaultCenter] removeObserver:self];
【问题讨论】:
-
Docs: "如果您的应用程序面向 iOS 9.0 及更高版本或 macOS 10.11 及更高版本,则无需在其释放方法中取消注册观察者。如果您的应用程序面向早期版本,请务必调用removeObserver:name:object: 在观察者或 addObserver:selector:name:object: 中指定的任何对象之前被释放。"
标签: iphone memory-management nsnotificationcenter