【问题标题】:How to Dismiss/Close Secondary Storyboard如何关闭/关闭辅助情节提要
【发布时间】:2019-09-11 22:40:13
【问题描述】:

我正在 xcode 中创建一个项目并使用多个故事板,其中主要是能够分离多个包含多个视图的分支选项。为其中一些分支选项使用单独的故事板可以让我的设计保持井井有条且易于阅读。

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

在新的故事板中,我有一个导航栏按钮项(退出),它显示了一个弹出框,内容为“您要关闭此部分并返回主菜单吗?”。如果用户单击“是”,我想关闭/关闭此故事板以返回 Main.storyboard。

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

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

【问题讨论】:

  • 使用多个故事板文件是很常见的。不用担心。对于这个问题,最简单的方法是移回segue if from 必须是unwind segue。您可以创建条形按钮项目的目标方法,然后展开 segue。
  • 除非我做错了什么,否则放松似乎不起作用。这是否可能是因为展开目标位于不同的情节提要中,并且不能再以之前的视图控制器为目标?
  • 没关系,我明白了。谢谢!

标签: ios xcode storyboard segue


【解决方案1】:

我看到你想通了,但是当谷歌搜索 dismiss storyboard reference 时,这个问题首先出现。

为了未来读者的利益,我们需要将 unwind segue 动作放在要返回的视图控制器中:

@IBAction func unwind(_ segue: UIStoryboardSegue) {
    // function and argument names do not matter, the body could be empty
    print(#line, #function)
}

并连接视图控制器上的控件(通常是按钮),您希望从该控制器返回到该视图控制器的出口。最简单的方法是按住 Ctrl 键从该控件(按钮)拖动线到视图控制器顶部的最后一个图标,然后选择 Action Segue: unwind

【讨论】:

    猜你喜欢
    • 2012-01-07
    • 2016-08-04
    • 1970-01-01
    • 1970-01-01
    • 2015-02-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多