【发布时间】:2015-12-21 20:53:22
【问题描述】:
在控制器中,我们在viewDidAppear 中添加了观察者,并在viewWillDisappear 中删除了它。 init/viewDidLoad中没有观察者。
在这种情况下,出于安全目的/dealloc 方法中是否需要以下行?
[[NSNotificationCenter defaultCenter] removeObserver:self];
现在的问题/疑问是有没有dealloc 会被调用而viewWillDisappear 不会被调用的场景?什么时候调用内存警告。在这些情况下会发生什么?
谢谢。
【问题讨论】:
-
到目前为止,我对我的代码很满意 viewwilldisappear 将被调用,但我会等待答案。讨论中提出的一种情况是有人建议视图可能不会在内存警告中消失。如果发生这种情况,即使稍后在视图消失时调用代码,代码也会在 viewdiddisappaer 中正常运行。
标签: ios objective-c