UIViewController不在Storyboard中保持状态

时间:2012-05-09 06:42:36

标签: ios design-patterns ios5 uiviewcontroller uistoryboard

我有一个iOS5故事板应用程序,当我在初始视图控制器'A'中按下某个特定按钮时,它正用它将视图控制器'B'推到导航堆栈上。按下按钮后,“B”将加载从Web服务中提取的一些数据。

当用户点击后退导航按钮然后按下按钮返回“B”时,B已完全重置。我知道这个Storyboard重新创建了ViewController B.如何阻止这种情况发生?我正在寻找合适的设计模式来解决这个问题。

1 个答案:

答案 0 :(得分:3)

只是为了澄清为什么会这样。只要按下后退按钮,viewController'B'就会从堆栈中推出,从而从内存中删除。为了避免这种情况,您必须在AppDelegate中为viewController“B”创建一个强指针属性。然后在viewWillAppear中,检查此属性是否为null,如果是,则正常设置其值。如果不是,那么您知道已经准备好了viewController,而是使用它。