我有一个UINavigationController,要求提供一些信息,用户导航到最后,一旦到达,他们就可以接受或取消已经输入的所有数据。
他们选择的选项并不重要,因为他们总是会使用
进入第一个视图[UINavigationController popToRootViewControllerAnimated:]
问题是,我如何释放/取消分配所有观点?
例如,它们从视图1开始,结束在视图8,一旦它们从8直接转到1,我怎么能释放视图2,3,4,5,6,7,8?< / p>
感谢,
的问候,
米。
答案 0 :(得分:3)
只需允许导航控制器为您处理内存 - 它会将控制器保持在其堆栈中并在删除时释放它们。因此,如果您未在其他任何地方取得控制器的所有权,则在从导航控制器弹出后,它们将自动解除分配。基本上你应该按如下方式推送控制器:
SomeControllerType* controller = [[SomeControllerType alloc] init];
[navigationController pushViewController:controller animated:animated];
[controller release];