在我的测试应用程序中,我有两个嵌入在标签栏控制器中的视图控制器(VC1和VC2) . 每个视图控制器都有“跳转”按钮,它将我们移动到第三个视图控制器(VC3):
在VC1中我添加了功能
@IBAction func unwindFromVC3(segue: UIStoryboardSegue) {
print("Unwind from VC3")
}
并连接VC3的“保存”栏项目和VC3的“退出”图标 .
因此,当我运行我的应用程序并单击VC1的“跳转”按钮时,我移动到了VC3,当我点击“保存”时,我又回到了VC1 . 没关系 .
如果我移动到VC2栏并从那里单击“跳转”,我再次移动到VC3 . 但如果我从那里点击“保存”,我又回到了VC1(而不是VC3) .
我预计那里没有任何事情发生(因为我在VC2中没有任何“展开”功能) . 那么为什么我被转移到VC1?是否可以为我的“保存”项创建两个展开操作?
1 回答
如果要从VC3中退回到VC2,只需将
unwindFromVC3
添加到VC2:然后展开segue将展开到正确的ViewController(一个隐藏到VC3的那个) .
您只需设置一次展开segue,只要转换到VC3的所有ViewControllers实现
unwindFromVC3
,保存将返回到原始ViewController .