我有以下故事板:
如果用户导航到查看A1-2,然后选择选项卡B,然后选择选项卡A ...它们将显示TableViewController A1-2(他们最近的“选项卡A退出点”)。
如果他们导航到Tab B然后决定“返回”并选择Tab A,我希望他们能够使用TableViewController A1;不是他们之前导航到的地方(即TableViewController A1-2,或他们最近的“Tab A退出点”)。
基本上,选择的任何选项卡(当前选择的选项卡除外)都将显示该特定选项卡的根视图控制器。
我的故事板设置可以实现吗?
很多,非常感谢任何反馈。
附录:
我是否也可以在视图A1-2(或A1-1,B1-2,B1-1)中使用以下代码:
override func viewWillDisappear(animated: Bool) {
super.viewWillDisappear(animated)
navigationController?.popToRootViewControllerAnimated(true)
}
如果用户切换标签,那么有效地删除根视图控制器上方的所有视图?并实现我想要的结果?
答案 0 :(得分:1)
您可以在标签栏切换时关闭A1-2和A1-1,如果需要,可以反之亦然。
//set tab bar delegate and call this method
func tabBar(tabBar: UITabBar, didSelectItem item: UITabBarItem) {
if item == tabBarB {
//dismiss viewController A1-2 and A1-1
self.view.window!.viewControllerA1?.dismissViewControllerAnimated(false, completion: nil)
} else {
//dismiss miss viewController B1-2 and B1-1
self.view.window!.viewControllerB1?.dismissViewControllerAnimated(false, completion: nil)
}
}
如果您正在寻找,请告诉我。