繁体   English   中英

swift xcode隐藏导航栏以显示特定视图

[英]swift xcode hide navigation bar for specific view

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

我现在这样做的方式是:

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

    self.navigationController?.navigationBarHidden = true
    }

它可以工作,但是隐藏条形图需要0.2秒,因此一旦视图加载,您就可以看到它跳了起来。 还有其他隐藏方法吗?

我面临着同样的问题,使用以下方法可以解决此问题:

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

在该视图的viewDidLoad中执行该操作,因为一旦将视图显示给用户,viewDidAppear就会运行。 您也可以尝试将导航栏的Alpha设置为0,以加快操作速度。

对于Swift 3:正如Arayman所指出的,将其添加到viewDidLoad中:

self.navigationController?.isNavigationBarHidden = true

只需在要隐藏导航栏的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)
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM