我使用故事板设置了一个非常简单的项目,其中包括两个视图:http://i.stack.imgur.com/iRx21.png。可以通过在自定义表格视图中选择单元格或点击标有“<<”的后退按钮来完成导航。一切正常,但以下情况除外:
当我在视图之间切换时,每次实例化都会发生。分析显示了越来越多的视图对象。我想只保留每个视图中的一个,并且实例化应该只发生一次。我究竟做错了什么? (我正在使用ARC。)
提前致谢!
答案 0 :(得分:0)
您不应将后退按钮链接到父视图控制器。这是导致新实例化的原因。
可行的方法是将表格视图嵌入UINavigationController
(在IB中,选择Editor -> Imbed In -> Navigation Controller
。然后将您的segue更改为Push
segue。您当然可以隐藏导航bar等,让事情看起来完全符合您的意愿。然后,使用IBAction
将后退按钮链接到控制器,并在处理程序中执行简单的操作
[self.navigationController popViewControllerAnimated:YES];
这将是你正在做的适当的逻辑。当然,您也可以以模态方式推送Web视图,然后使用
处理按钮单击[self dismissModalViewControllerAnimated:YES];