ios - 多个 Segue 到同一目的地

标签 ios swift swift3

我有一系列 View Controller 。其中一个称为“家”,然后是其他 10 个,您可以按顺序浏览,即;首页 -> 1 -> 2 -> 3 等等。 所有 View Controller 都有一个“主页”按钮,可带您返回第一个“主页” View Controller 。有没有一种有效的方法可以做到这一点,而不是从每个 VC 到“主”VC 创建 10 个单独的转场?

请记住,我希望内存使用尽可能高效,而无需在来回导航时一次又一次创建同一 View Controller 的实例。

非常感谢任何帮助。

最佳答案

感谢所有发表评论的人。根据这些评论,本例中的最佳行动方案如下:

将主页 View Controller 嵌入到导航 Controller 中,并将以下方法添加到主页 View Controller 中:

@IBAction func unwindToViewController(_ sender: UIStoryboardSegue) {}

然后在所有带有主页按钮的 Storyboard中,按住 Control 键拖动到顶部栏中相应的 View Controller “退出”图标,然后选择之前创建的“unwindToViewController”方法。

当导航回根 VC 时,这将删除堆栈中的所有 VC。

关于ios - 多个 Segue 到同一目的地,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39710766/

相关文章:

ios - 如何从 ios swift3 中的 CoreData 获取特定范围的数据

ios - viewcontroller 中的标签填充速度非常慢

ios - 在watchOS上使用SiriKit

ios - 访问方法内部的变量并允许使用 segue 将其传递给其他 View Controller

ios - Xcode 测试未检测到我的类(class)

ios - 在 UITableView 中搜索具有多个部分的 Controller

uicollectionview - 在Swift 3中实现layoutAttributesClass()

objective-c - 从自定义按钮更改为另一个 View

ios - 如何调整 UIScrollView 的大小以适应 UILabel 中未知数量的文本?

ios - 查看本地通知的授权状态