【发布时间】:2015-07-06 07:46:55
【问题描述】:
我有一个UINavigationController,我希望它的根视图控制器隐藏导航栏,所以我在根视图控制器的类中写了这个:
override func viewWillLayoutSubviews() {
self.navigationController?.setNavigationBarHidden(true, animated: false)
}
这有效地隐藏了导航栏。这个根视图控制器有一个按钮,点击时会推送一个新的视图控制器。我希望第二个视图控制器显示导航栏,所以在它的子类中:
override func viewWillLayoutSubviews() {
self.navigationController?.setNavigationBarHidden(false, animated: false)
}
然后显示导航栏,但是当我点击它的后退按钮并导航回到上一个视图控制器(我想隐藏导航栏的那个)时,它会在其视图顶部显示一个瞬间导航栏应该在的空白处,最后视图再次“转到”屏幕顶部。
如何避免这种影响?
【问题讨论】:
标签: ios uinavigationcontroller uinavigationbar show-hide