presentModalViewController未被释放

时间:2011-08-22 18:12:25

标签: objective-c ios ipad presentmodalviewcontroller

我正在尝试使用presentModalViewController消息以模态方式呈现自定义视图控制器,其中自定义视图从分离的NIB加载。

这个过程运行正常,但我注意到(使用分配工具)每次以模态方式呈现视图控制器(或通过导航控制器推送),一旦被解除,内存不会被回收。最终发生的事情是,如果用户多次激活模态视图控制器,最终应用程序将收到内存警告并最终崩溃。

我正试图找到一种强制释放为模态视图控制器分配的内存的方法。此时,我已经创建了父视图控制器拥有的视图控制器的单个实例,并为所有模态调用重用了视图控制器。

有关释放被解雇的模态视图控制器的任何帮助将不胜感激。

谢谢你们!

2 个答案:

答案 0 :(得分:2)

致电presentModalViewController:animated:后,如果您不再需要,可以释放现有的视图控制器。只要它出现,UIKit本身就会保留它。

答案 1 :(得分:0)

签出对象所有权。您的视图控制器负责呈现模态视图控制器,以便保留对其的所有权。因此,您可以在实例化后释放控制器并使用presentModalViewController:animated来呈现它。