导航到storyboard中的viewcontroller始终会创建一个新的ViewController,如何重用以前的ViewController?

时间:2015-07-01 06:29:47

标签: ios navigation storyboard

我有一个导航应用。根视图控制器(RootViewController)有一个导航到另一个视图控制器(DetailViewController1)的按钮。在XCode故事板中很容易做到这一点。

我的问题是:DetailViewController1总是在我导航到它时创建一个新实例。当我尝试另一种方式时,我创建了另一个DetailViewController2类,并在应用程序启动时创建其实例。然后我编写代码来推送DetailViewController2实例,在这种情况下,DetailViewController2只能创建一次。

问题是:故事板上是否有设置,以便在导航到故障板时可以阻止创建相同的视图控制器实例?就像我按下手动创建的DetailViewController2

一样

2 个答案:

答案 0 :(得分:2)

不,没有。推送始终相同实例的唯一方法是执行代码推送,就像您已经完成的那样。

答案 1 :(得分:1)

为viewcontroller设置一个故事板ID。然后在按钮Action

    myViewController* vc=[self.storyboard instantiateViewControllerWithIdentifier:@"storyboardid"];
    [self.navigationController pushViewController:vc animated:YES];