快速使用Segue时如何显示标签栏

时间:2018-12-28 08:59:59

标签: ios swift uitabbar

我在第一个视图中有一个选项卡栏,总共有两个视图。

但是,当我使用Segue从第一个视图移至第二个视图然后再返回至第一个视图时,第一个视图的Tab栏消失了。

从第二个视图返回到第一个视图时,选项卡栏不消失的方式是什么?(不使用展开功能)

enter image description here

3 个答案:

答案 0 :(得分:1)

请勿在此处使用 unwind segue 。当您需要返回到以前的ViewController时,只需dismiss您当前的ViewController

dismiss(animated: true, completion: nil) /* call this in second VC */

答案 1 :(得分:1)

我建议您阅读documentation,以了解如何组合使用View Controller Interfaces。无论如何,如果您需要在流程上弹出到以前的视图控制器,则需要使用

navController.popViewController(animated: true)

但是,如果需要在NavigationViewController中的视图控制器队列上弹出特定的ViewController,则需要使用

 navController.popToViewController(ViewController, animated: true)

从使用NavigationController的那一刻起,返回按钮将自动出现在UINavigationBar上,因此您不必为此担心。除非您要自定义viewcontrollers队列中的后退按钮,否则在这种情况下,请使用上述方法。

答案 2 :(得分:0)

用于第1页。加载页面后,显示tabBarController

override func viewWillAppear(animated: Bool) {
    super.viewWillAppear(animated)
    self.tabBarController?.tabBar.hidden = true
} 

如果触发了点击事件,请隐藏tabBarController

override func prepareForSegue(segue: UIStoryboardSegue!, sender: AnyObject!) {
    if (segue.identifier == "twoSegue") {
        self.tabBarController?.tabBar.hidden = false
    }
}