隐藏视图控制器的导航栏

13

我试图隐藏一个单独视图控制器的导航控制器,但是没有成功,第一个视图控制器的导航栏已经被隐藏了,但是在第二个视图控制器中没有显示。

这是我在第一个视图控制器中使用的代码:

override func viewWillAppear(_ animated: Bool) {
    super.viewWillAppear(animated)

    // Hide the Navigation Bar
    self.navigationController?.setNavigationBarHidden(true, animated: animated)
}

override func viewWillDisappear(_ animated: Bool) {
    super.viewWillDisappear(animated)

    // Show the Navigation Bar
    self.navigationController?.setNavigationBarHidden(false, animated: animated)
}

Swift 4有哪些变化?那段代码在Swift 3中可行...


1
它也适用于Swift 4。只需交叉检查动画即可。 - Joyal Clifford
1个回答

46

使用代码:- Swift 5

override func viewWillAppear(_ animated: Bool) {
    super.viewWillAppear(true)
    // Hide the Navigation Bar
    self.navigationController?.setNavigationBarHidden(true, animated: true)
}

override func viewWillDisappear(_ animated: Bool) {
    super.viewWillDisappear(true)
    // Show the Navigation Bar
    self.navigationController?.setNavigationBarHidden(false, animated: false)
}

1
你也可以这样写: self.navigationController?.setNavigationBarHidden(false, animated: animated) - Diego Carrera

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接