UINavigationBar 在另一个 viewController 隐藏状态栏时移动到状态栏下方
UINavigationBar moving under status bar when another viewController hides status bar
问题很简单,配置文件 viewController
在状态栏下方有一个 NavigationBar
。
我将另一个 viewController
推到当前的之上。
这个新的 viewController
隐藏了状态栏。
当我返回配置文件 viewController
时,navigationBar
已经向上移动了状态栏高度的大小。
我试图在 viewWillAppear
中强制刷新布局,但它不起作用。
有什么想法吗?
在显示的 viewcontroller 中实施 viewDidDisappear
并在进入 profileview 控制器之前再次显示状态栏。
override func viewWillDisappear(animated: Bool) {
UIApplication.sharedApplication().setStatusBarHidden(false, withAnimation: UIStatusBarAnimation.Fade)
}
在 plist 文件中添加代码在您的应用中隐藏状态栏:
<key>UIViewControllerBasedStatusBarAppearance</key>
<false/>
使用下面的代码,
override func viewWillDisappear(animated: Bool) {
navigationController?.setNavigationBarHidden(navigationController?.navigationBarHidden == false, animated: false)
}
希望对您有所帮助
问题很简单,配置文件 viewController
在状态栏下方有一个 NavigationBar
。
我将另一个 viewController
推到当前的之上。
这个新的 viewController
隐藏了状态栏。
当我返回配置文件 viewController
时,navigationBar
已经向上移动了状态栏高度的大小。
我试图在 viewWillAppear
中强制刷新布局,但它不起作用。
有什么想法吗?
在显示的 viewcontroller 中实施 viewDidDisappear
并在进入 profileview 控制器之前再次显示状态栏。
override func viewWillDisappear(animated: Bool) {
UIApplication.sharedApplication().setStatusBarHidden(false, withAnimation: UIStatusBarAnimation.Fade)
}
在 plist 文件中添加代码在您的应用中隐藏状态栏:
<key>UIViewControllerBasedStatusBarAppearance</key>
<false/>
使用下面的代码,
override func viewWillDisappear(animated: Bool) {
navigationController?.setNavigationBarHidden(navigationController?.navigationBarHidden == false, animated: false)
}
希望对您有所帮助