我有一个应用程序,我希望隐藏第一个视图控制器的状态栏(有点像介绍屏幕)。但是,后面的所有视图控制器都应显示状态栏。 我意识到这是一个常见的问题,但我的不同之处是:
我已经进入Info.plist并将View controller-based status bar appearance
设置为NO
,因为我希望应用程序其余部分的状态栏为白色。我使用App Delegate中的以下代码行完成了此操作:
UIApplication.sharedApplication().statusBarStyle = UIStatusBarStyle.LightContent
出于这个原因,我无法在View Controller中使用prefersStatusBarHidden
方法来单独隐藏状态栏。
我有没有办法在Info.plist中将View controller-based status bar appearance
设置为YES
而隐藏这一个View Controller中的状态栏? (因为这样做意味着我必须手动转到后面的每个View Controller,并将状态栏颜色设置为白色,而不是像AppDelegate那样执行所有操作,如上所示)
答案 0 :(得分:0)
在第一个视图控制器的viewDidLoad或viewWillAppear函数中,隐藏状态栏:
UIApplication.sharedApplication().statusBarHidden = true
在它的viewWillDisappear函数中,显示它:
UIApplication.sharedApplication().setStatusBarHidden(true, animation: UIStatusBarAnimation.Fade)