在初始屏幕期间隐藏状态栏

时间:2016-02-08 22:40:48

标签: ios swift

我正试图在启动画面期间隐藏状态栏,当我将“状态栏最初隐藏”添加到plist并将值设置为YES时,这可以正常工作,但是这会从enitre应用程序中删除statusBar,即使我是添加了“查看基于控制器的状态栏外观”到plist并将值设置为NO并添加到appdelegate之后:

 UIApplication.sharedApplication().statusBarStyle = UIStatusBarStyle.LightContent 

如何在不删除应用程序其余部分的情况下删除statusBar?

7 个答案:

答案 0 :(得分:48)

这是针对Xcode 8.3.3的Swift 3进行了更新

在Info.plist中添加以下密钥:

info.plist

然后在您的AppDelegate文件中添加didFinishLaunchingWithOptions部分中的以下内容:

func application(_application:UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool { 
      UIApplication.shared.isStatusBarHidden = false
      return true 
}

这应该解决你的问题。

如果您遇到问题,还可以在项目构建设置中配置启动颜色:

buildOptions

希望有所帮助!

答案 1 :(得分:17)

在Swift 4中 在Info.plist中添加:

  

Status bar is initially hidden YES

答案 2 :(得分:11)

在您的项目设置中 - >常规 - >部署信息,选中“隐藏状态栏”字段。

enter image description here

接下来在视图控制器中覆盖- prefersStatusBarHidden方法,如下所示:

override func prefersStatusBarHidden() -> Bool {
   return false
}

答案 3 :(得分:3)

只需将突出显示的行添加到Info.plist文件中,它就适用于Swift 4:

enter image description here

答案 4 :(得分:1)

在Swift 3中

首先隐藏项目中的状态栏 - >目标如下

enter image description here

然后取消隐藏didFinishLaunchingWithOptions

中的状态栏
func application(_application:UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool { 
      UIApplication.shared.isStatusBarHidden = false
      return true 
}

答案 5 :(得分:0)

    UIApplication.sharedApplication().setStatusBarHidden(true, withAnimation: UIStatusBarAnimation)

答案 6 :(得分:0)

要同时隐藏在iPad上,请将Info.plist中的output = [1,2,4,5, 9,10,13,14, 20,21,26,27] 键设置为UIStatusBarHidden~ipad