1

我有一个导航控制器,我似乎无法理解的一件事是为什么当我弹出一个视图控制器时,它没有被释放。

当我将它添加到导航控制器时我释放它,这对我来说意味着现在导航控制器负责管理视图控制器。

但是当我弹出导航控制器时,我可以看到弹出的视图控制器仍然存在。我知道这一点是因为通知观察者仍在执行。

我也尝试从视图中删除导航控制器,释放并将其设置为零,但我的视图控制器仍然徘徊。

当视图控制器被弹出或我释放导航控制器本身时,我可以在哪里以及如何释放视图控制器形成导航控制器?

谢谢。

4

1 回答 1

2

您提到通知观察者...视图控制器是否添加到通知中心?如果是这种情况,我认为通知中心会保留视图控制器。在 viewWillDisappear 中将其作为观察者删除,然后在 dealloc 中抛出一个 NSLog 并查看它现在是否正确释放。

于 2012-04-26T19:31:38.700 回答