首页 文章

如何立即隐藏单个视图控制器上的导航栏?

提问于
浏览
1

我有一个带有两个视图控制器的应用程序和一个位于屏幕顶部的图像 . 我已经将导航栏隐藏在第一个(主)视图控制器上而没有任何问题,但是使用第二个视图控制器中的“后退”按钮会导致我的图像在导航栏被隐藏时短暂下拉 . 如果可能的话,我想返回第一个屏幕而不会移动图像 . 我用来隐藏导航栏的代码如下:

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

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

我正在使用一个故事板 . 有什么建议?

1 回答

  • 2

    在视图中将消失尝试此

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

    隐藏取消隐藏导航栏时删除动画 .

相关问题