首页 > 解决方案 > 从 UITableViewController 推送到 UIViewController 时,底部标签栏消失并保持黑色

问题描述

在我的用例中,我想在离开 UITabbarController 时隐藏底部标签栏。

我正在使用

let vc = storyboard?.instantiateViewController(withIdentifier: tableData[indexPath.row]["vcIdentifier"]!)
self.hidesBottomBarWhenPushed = true
self.show(vc!, sender: self)

它有点工作,因为推送的视图控制器底部没有标签栏。但是,一旦我单击导航,“发送者”视图控制器的底部标签栏就会消失并留下黑色区域。

如果您需要有关任何事情的更多信息,请告诉我。提前非常感谢!

标签: swiftuitabbar

解决方案


如果推送的视图控制器底部没有标签栏,则可以添加视图控制器代码的这个生命周期。

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

override func viewWillDisappear(_ animated: Bool) {
    super.viewWillDisappear(animated)
    tabBarController?.tabBar.isHidden = false
}

推荐阅读