如何在第一个ViewController或swift中的特定ViewController中隐藏导航栏?
我在 viewDidLoad()
中使用了以下代码:
override func viewDidLoad() {
super.viewDidLoad()
self.navigationController?.isNavigationBarHidden = true
}
以及 viewWillAppear
:
override func viewWillAppear(animated: Bool) {
self.navigationController?.isNavigationBarHidden = true
}
这两种方法都隐藏了所有ViewControllers的导航控制器 .
10 回答
如果您知道所有其他视图都应该显示该栏,则可以使用
viewWillDisappear
将其设置为再次可见 .斯威夫特3
你可以在
viewWillDisappear
取消隐藏navigationController
Swift 3
您还可以为此创建扩展,这样您就可以重复使用扩展,而无需在每个视图控制器中反复执行此扩展 .
所以你可以使用如下的扩展方法
在Swift 3中,您还可以使用isNavigationBarHidden属性来显示或隐藏导航栏
在Swift中显示导航栏的方法:
你可以从窗口控制器(Swift3)做到这一点
但只有当它是 UINavigationController 的一部分时
当你想要它时,把它弄错
我使用上面的变体,并将我的应用程序的各个部分隔离在不同的NavControllers中 . 这样,我不必重置可见性 . 例如,在启动序列中非常有用 .
在Swift中隐藏导航栏的方法: