[英]Hide status bar on iOS Swift
在我的应用程序中,对于特定屏幕,我需要隐藏状态栏。 我的屏幕层次结构是:
MainScreen -> ScreenA -> ScreenB -> Screenc
在 My Screenc 中,我需要隐藏状态栏。 所以我这样做:
override var prefersStatusBarHidden: Bool {
return true
}
它工作正常。 但是当我从Screenc
推回我的ScreenB, ScreenA
状态栏和我的导航栏重叠。 就像我的ScreenB, ScreenA
title
、 right bar button
一样,都与状态栏重叠。 但我的状态栏也显示在ScreenB, ScreenA
中。
不知道为什么会这样。 在我的 plist 文件中,我有:
View controller-based status bar appearance : YES
我无法将其更改为否。 因为在我的应用程序中,我正在使用将肖像固定到特定的视图控制器。
如何解决这些问题的任何解决方案?
你可以做的是在出现和消失中显示和隐藏
override func viewWillAppear(_ animated: Bool) {
super.viewWillAppear(animated)
navigationController?.isNavigationBarHidden = true
}
override func viewWillDisappear(_ animated: Bool) {
super.viewWillDisappear(animated)
navigationController?.isNavigationBarHidden = false
}
在 viewDidLoad() function 添加
self.navigationController?.isNavigationBarHidden = true
并在您之前的 ViewController on viewDidAppear 方法中添加
self.navigationController?.isNavigationBarHidden = false
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.