iPhone:模态视图控制器泄漏内存

时间:2010-04-25 14:02:33

标签: iphone memory-management uiviewcontroller modalviewcontroller

我正在展示一个modalViewController。用我解雇模态视图控制器后:

- (void)dismissModalViewControllerAnimated:(BOOL)animated

..视图仍然在内存中。如何解雇它以便它会使用内存?

感谢。

4 个答案:

答案 0 :(得分:0)

当您展示模态视图控制器时,需要将其释放。

答案 1 :(得分:0)

我遇到了同样的问题。我只是暂时保留了ViewController,直到我调用presentModalViewController,然后释放alloc。但是在dismissModalViewControllerAnimated之后,我从来没有得到ViewController的dealloc。

如果我从ViewController添加一个自我释放,那么在控制返回到事件循环后我得到这个:

编程接收信号:“EXC_BAD_ACCESS”。 objc_msgSend

答案 2 :(得分:0)

遇到同样的问题。我有一个我以模态方式呈现的NavigationController,并且作为此NavigationController的rootController,我有简单的ViewController对象。罕见的情况是,当我使用Allocations运行我的应用程序时,在解除modalController后,在本例中为NavigationController,NavigationController消失,但rootController仍在内存中,内存增长和增长。 (注意:仪器中的泄漏没有显示任何泄漏,应用程序在设备上运行而不是模拟器)。

答案 3 :(得分:0)

当你呈现一个模态视图控制器时,你肯定会分配,所以只要你分配你就需要释放它,所以请释放你在modalviewcontroller中呈现的视图控制器。