我有一个视图控制器(在导航控制器中)A切换到视图控制器B,视图控制器C也切换到B(A - > B < - C).视图控制器B用于选择传递回A或C的值,但如果单击"取消"或"完成",它将使用展开segue返回仅一个控制器,以最后连接的为准.
你可以有一个展开segue返回到viewController启动segue的任何一个.您所要做的就是在所有viewControllers中实现与返回到viewController B相同的方法.
所以在viewController A和viewController C中,实现以下方法:
@IBAction func backFromB(segue: UIStoryboardSegue) { print("Back from B") }
然后,当您Control从viewController B中的Cancel按钮拖动到viewController 顶部的Exit图标时,backFromB
从弹出窗口中选择.
然后当你运行应用程序并在viewController B中点击取消时,你将返回到viewController A或viewController C(无论哪一个被Segued到B).如果一个segue是Show(Push)而另一个是Modal,这甚至可以工作.