在我经常介绍的ViewController中,我这样做了:
override func prefersStatusBarHidden() -> Bool {
return true
}这过去很管用,但现在行不通了。什么是最好的方法来隐藏状态栏仅这个视图控制器?
发布于 2016-11-02 09:20:27
对于Swift 3 & Swift 4,它已更改为重写如下所示的变量:
override var prefersStatusBarHidden: Bool {
return true
}如果要在视图控制器已经显示后“更新”状态,则需要调用:
setNeedsStatusBarAppearanceUpdate()请参阅文档。
发布于 2017-02-16 00:44:55
对于Swift 3和Swift 4.2,视图将在何时出现
override func viewWillAppear(_ animated: Bool) {
super.viewWillAppear(animated)
UIApplication.shared.isStatusBarHidden = true
}当视图到Dissapear时
override func viewWillDisappear(_ animated: Bool) {
super.viewWillDisappear(animated)
UIApplication.shared.isStatusBarHidden = false
}您可能需要在您的info.plist中设置下一行:
View controller-based status bar appearance = NO

发布于 2016-12-09 12:47:15
在UIViewController中:
override func viewDidAppear(_ animated: Bool) {
super.viewDidAppear(animated)
UIApplication.shared.isStatusBarHidden = true
}
override func viewWillDisappear(_ animated: Bool) {
super.viewWillDisappear(animated)
//It will show the status bar again after dismiss
UIApplication.shared.isStatusBarHidden = false
}
override var prefersStatusBarHidden: Bool {
return true
}https://stackoverflow.com/questions/35028262
复制相似问题