一尘不染

如何在Swift中从第一个ViewController隐藏导航栏?

swift

如何快速隐藏第一个ViewController或特定ViewController的导航栏?

我在中使用了以下代码viewDidLoad()

override func viewDidLoad() {
    super.viewDidLoad()
    self.navigationController?.isNavigationBarHidden = true
}

以及viewWillAppear

override func viewWillAppear(animated: Bool) {
    self.navigationController?.isNavigationBarHidden = true
}

两种方法都对所有ViewController隐藏导航控制器。


阅读 448

收藏
2020-07-07

共1个答案

一尘不染

如果您知道其他所有视图都应显示该栏,则可以viewWillDisappear将其重新设置为可见。

在Swift中:

override func viewWillAppear(_ animated: Bool) {
    super.viewWillAppear(animated)
    navigationController?.setNavigationBarHidden(true, animated: animated)
}

override func viewWillDisappear(_ animated: Bool) {
    super.viewWillDisappear(animated)
    navigationController?.setNavigationBarHidden(false, animated: animated)
}
2020-07-07