【发布时间】:2011-11-01 02:48:10
【问题描述】:
我的应用程序涉及许多视图控制器,其中一些是内存重负荷的。
用户流程就像从一个家庭视图控制器开始,用户将点击一系列视图控制器(我使用 presentModalViewControler 进行转换)。有时,用户会单击菜单栏或其他东西回到他/她过去经历过的某个视图控制器,或者跳转到一个尚未呈现的视图控制器。所以,就像: A->B->C->D->B->D->E->F->C->I...
我现在做的是:无论用户在哪里,当他/她需要跳转到其他视图控制器时,我只需实例化目标视图控制器,并将其呈现为模态视图控制器。
嗯,它运行良好,但使用 Instruments,我发现分配的内存堆自应用程序启动以来一直在增加。我的猜测是 parentViewController(或 iOS 5 中的 presentingViewController)永远不会被释放,因为它位于模态呈现堆栈的根或中间,所以就像不断添加 viewcontroller 实例一样。
因此,我意识到我做错了。如果有人能指出我做这样的应用程序的正确方向,我将不胜感激。
【问题讨论】:
标签: iphone ios ipad uiviewcontroller