swift xcode隐藏特定视图的导航栏

时间:2015-07-20 01:23:52

标签: ios swift

我想隐藏特定视图的导航栏,并添加我自己的自定义“后退按钮”

我现在这样做的方式是:

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

    self.navigationController?.navigationBarHidden = true
    }

它可以工作,但是在隐藏条形图之前需要0.2秒,所以一旦视图加载,你就会看到它跳起来。有没有其他方法可以隐藏它?

4 个答案:

答案 0 :(得分:4)

我遇到了同样的问题,使用以下方法解决了这个问题:

self.navigationController?.setNavigationBarHidden(true, animated: true)

答案 1 :(得分:1)

在该视图的viewDidLoad中执行此操作,因为一旦向用户显示视图,viewDidAppear就会运行。您还可以尝试将导航栏的alpha设置为0以便更快地执行操作。

答案 2 :(得分:0)

对于Swift 3: 正如Arayman Goes所说,将其添加到viewDidLoad:

self.navigationController?.isNavigationBarHidden = true

答案 3 :(得分:0)

只需将该代码写入您要隐藏导航栏的swift文件中...(Swift - 3)

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

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