簡體   English   中英

導航到storyboard中的viewcontroller始終會創建一個新的ViewController,如何重用以前的ViewController?

[英]Navigating to a viewcontroller in storyboard always creates a new ViewController, how can I reuse the previous ViewController?

我有一個導航應用程序。 根視圖控制器( RootViewController )有一個導航到另一個視圖控制器( DetailViewController1 )的按鈕。 在XCode故事板中很容易做到這一點。

我的問題是:當我導航到它時, DetailViewController1總是創建一個新實例。 當我嘗試另一種方式時,我創建了另一個DetailViewController2類,並在應用程序啟動時創建其實例。 然后我編寫代碼來推送DetailViewController2實例,在這種情況下, DetailViewController2只創建一次。

問題是:故事板上是否有設置,以便在導航到故障板時可以阻止創建相同的視圖控制器實例? 就像我按下手動創建的DetailViewController2

不,沒有。 推送始終相同實例的唯一方法是執行代碼推送,就像您已經完成的那樣。

為viewcontroller設置一個故事板ID。 然后在按鈕動作中

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

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM