我创建了一个标签栏控制器,从一个标签项我给了segue到导航视图控制器。我创建了一些附加到导航控制器的视图控制器。所以在一个视图控制器中我不需要一个标签,所以在那个控制器中我写了隐藏标签栏控制器self.tabBarController?.tabBar.isHidden = true
。
当我从隐藏标签视图控制器到前一个控制器单击导航控制器的后退按钮时,它不显示先前控制器中的标签栏项目。但我在所有视图控制器中都需要选项卡,除了在一个视图控制器为什么不显示标签?
这是我的故事板:
您可以在隐藏选项卡的VC之前的VC中尝试此操作
override func viewWillAppear(_ animated:Bool) {
super.viewWillAppear(animated)
self.tabBarController?.tabBar.isHidden = false
}
您可以在视图控制器中使用hidesBottomBarWhenPushed
in,您不需要选项卡。适合你的情况。
let controller = ViewControllerTwo()
controller.hidesBottomBarWhenPushed = true
navigationController?.pushViewController(controller, animated: true)
再解释一下:
self.tabBarController?.tabBar.isHidden = true
全球改变了self.tabBarController
的财产hideTabBar
跨越其儿童控制器堆栈。