如何 Dismiss/Close 二级故事板

How to Dismiss/Close Secondary Storyboard

我正在 xcode 中创建一个项目,出于一些原因我正在使用多个故事板,其中最主要的是能够分离多个分支选项,这些选项都包含多个视图。为其中一些分支选项使用单独的故事板可以让我的设计保持条理和可读性。

无论如何,我已经创建了一个按钮,当按下该按钮时,它会显示一个故事板引用我的目标故事板的节目序列。这很好用。

在新的情节提要中,我有一个导航栏按钮项(退出),它按照 "would you like to close this section and return to the main menu?" 的方式显示一个弹出窗口。如果用户点击"yes",我想close/dismiss这个storyboard到return到Main.storyboard。

我可以使用另一个 Storyboard Reference 和 "yes" 按钮的 Show seque,但我认为这不是最佳实践,最终会造成大量循环资源使用。

在这种情况下实现我的意图的最佳方法是什么?

我看到你已经解决了这个问题,但是在谷歌搜索 关闭故事板参考.

时这个问题首先出现

为了未来读者的利益,我们需要在您想要 return:

的视图控制器中放置 unwind segue 动作
@IBAction func unwind(_ segue: UIStoryboardSegue) {
    // function and argument names do not matter, the body could be empty
    print(#line, #function)
}

并将您想要 return 的视图控制器上的控件(通常是按钮)连接到该视图控制器的出口。最简单的方法是 Ctrl-drag 从该控件(按钮)到视图控制器顶部最后一个图标的行,然后选择 Action Segue: unwind.