你好,我正在尝试从一个模态视图转到一个标签栏视图控制器,但不想失去标签栏?我知道问题很简短,但这就是我想问的。
场景: 我有一个标签栏视图控制器A和B。 B以模态方式呈现C视图控制器。 然后我想返回到视图控制器A。
请用Swift编写 :D
你好,我正在尝试从一个模态视图转到一个标签栏视图控制器,但不想失去标签栏?我知道问题很简短,但这就是我想问的。
场景: 我有一个标签栏视图控制器A和B。 B以模态方式呈现C视图控制器。 然后我想返回到视图控制器A。
请用Swift编写 :D
这是一个示例,展示如何操作。在我的设置中,从选项卡中选择黄色的ViewController,然后点击Go!会以模态方式呈现白色的 ViewController。点击 Exit 返回到绿色的 ViewController 。
要设置这个,请使用取消连线(segue) 返回调用您的viewController。例如,在选项卡的第一个ViewController(调用模态segue的那个)中实现此操作。
@IBAction func backFromModal(_ segue: UIStoryboardSegue) {
print("and we are back")
// Switch to the second tab (tabs are numbered 0, 1, 2)
self.tabBarController?.selectedIndex = 1
}
然后,使用self.tabBarController?.selectedIndex = n
切换到另一个选项卡,其中n
是您真正想要进入的选项卡的编号。要设置回溯segue,您可以从模态视图控制器中的按钮 control -拖动到viewController顶部的退出图标,然后从弹出窗口中选择backFromModal
... 或者您可以通过从模态viewController顶部的viewController 图标control -拖动到退出图标,并从弹出窗口中选择backFromModal
来设置回溯segue以在程序上调用。 然后,转到文档大纲视图,单击回溯segue 并在右侧的属性检查器中为其指定一个标识符(例如"returnFromModal "
)。然后,您可以像这样调用回溯segue: self.performSegue(withIdentifier: "returnFromModal", sender: self)