ios NavigationBarHidden在viewDidLoad中不起作用

时间:2015-12-01 09:37:56

标签: ios xcode swift

嗨,我是快速IOS编程的新手。我在功能viewDidLoad()中隐藏导航栏时遇到问题。

这是我的代码:

self.navigationController.navigationBarHidden = TRUE

但是,一旦视图加载,它就不会隐藏导航栏。我是否需要在其他地方放置更多代码?

更新: 问题解决了!用viewWillAppear()替换viewDidLoad(),现在它正在工作。谢谢大家。

3 个答案:

答案 0 :(得分:3)

替换viewWillAppear中的代码而不是viewDidLoad,它应该可以正常工作

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

答案 1 :(得分:0)

viewDidLoad不适合这个,因为您的视图控制器尚未添加到导航控制器的堆栈中。 您应该使用viewWillAppear代替!

答案 2 :(得分:0)

当ViewController加载时,viewDidLoad()方法只调用一次。 您应该尝试将其放在viewWillAppear()或viewDidAppear()方法中。

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