无法为视图设置iOS状态栏颜色
我正在使用Swift 1.2为iOS8开发一个应用程序 但是,我对状态栏的颜色有问题(时间、电池指示灯等) 在我的无法为视图设置iOS状态栏颜色,ios,swift,xcode-storyboard,uistatusbar,Ios,Swift,Xcode Storyboard,Uistatusbar,我正在使用Swift 1.2为iOS8开发一个应用程序 但是,我对状态栏的颜色有问题(时间、电池指示灯等) 在我的Info.plist文件中,我将UIViewControllerBasedStatusBarAppearance设置为YES,并将状态栏样式设置为UIStatusBarStyleLightContent,然后在故事板中的所有视图控制器中,我将状态栏设置为“Light Content” 这适用于我所有的NavigationViewController和嵌入NavigationView
Info.plist
文件中,我将UIViewControllerBasedStatusBarAppearance
设置为YES
,并将状态栏样式设置为UIStatusBarStyleLightContent
,然后在故事板中的所有视图控制器中,我将状态栏设置为“Light Content”
这适用于我所有的NavigationViewController
和嵌入NavigationViewController
中的视图,但是我有一个正常的TableViewController
,它没有嵌入NavigationController
,当我以模式按下此视图时,状态栏变为黑色
即使当我在脚本编辑器中查看视图时,它也会显示为白色状态栏(请注意下面屏幕截图右侧微弱的白色电池指示灯):
但当我在iPhone上构建和运行时,状态栏显示为黑色
为什么会这样?我怎样才能解决这个问题?我不知道什么地方可能不正确。请确保在您的Info.plist中添加查看基于控制器的状态栏外观
(UIViewControllerBasedStatusBarAppearance),并使用值NO
。请确保添加查看基于控制器的状态栏外观
(UIViewControllerBasedStatusBarAppearance)将值NO
添加到您的Info.plist以下是UIStatusBar
样式的设置:
转到AppDelegate.swift
,在didfishlaunchingwithoptions
方法中的代码行下方添加:
UIApplication.sharedApplication().statusBarStyle = UIStatusBarStyle.LightContent
将以下键添加到.plist
文件中
在情节提要中选择控制器UINavigationController
或UIViewController
。并将状态栏样式设置为Light Content
这些是UIStatusBar
样式的设置:
转到AppDelegate.swift
,在didfishlaunchingwithoptions
方法中的代码行下方添加:
UIApplication.sharedApplication().statusBarStyle = UIStatusBarStyle.LightContent
将以下键添加到.plist
文件中
在情节提要中选择控制器UINavigationController
或UIViewController
。并将状态栏样式设置为Light Content
更新:
从另一篇StackOverflow文章()中,我发现解决这个问题非常简单
对于希望以编程方式设置状态栏颜色的任何其他人,我只是将以下代码插入到我的ViewController中,用于所讨论的视图:
-Swift 4.0+
-早期雨燕(4.0-)
更新:
从另一篇StackOverflow文章()中,我发现解决这个问题非常简单
对于希望以编程方式设置状态栏颜色的任何其他人,我只是将以下代码插入到我的ViewController中,用于所讨论的视图:
-Swift 4.0+
-早期雨燕(4.0-)
在Appdelegate.swift
文件中添加此行:
UIApplication.sharedApplication().statusBarStyle = .LightContent
在Appdelegate.swift
文件中添加此行:
UIApplication.sharedApplication().statusBarStyle = .LightContent
适用于Swift 3
在函数中的AppDelegate.swift
文件中didfishlaunchwithoptions
UIApplication.shared.statusBarStyle = UIStatusBarStyle.lightContent
适用于Swift 3
在函数中的AppDelegate.swift
文件中didfishlaunchwithoptions
UIApplication.shared.statusBarStyle = UIStatusBarStyle.lightContent
再添加一个键状态栏样式
->UIStatusBarStyleLightContent
是的,你已经有了(对不起,问题中没有提到,但也已经有了)设法在另一篇文章中找到解决方案:再添加一个键状态栏样式
UIStatusBarStyleLightContent
是的,你已经有了(对不起,问题中没有提到,但已经有了)在另一篇帖子中找到了解决方案:我将其设置为“是”…为什么我要将其设置为“否”?当我以前将其设置为“否”时,我遇到了一个不同的问题,状态栏将为白色,但当我显示UIImagePicker,然后关闭picker时,从那时起,整个应用程序中的状态栏将始终为黑色(不正确…需要为白色)当您选择“是”时,每个控制器都可以使用自己的样式。当您将其设置为“否”时,将始终使用plist中的设置。我将其设置为“是”…为什么要将其设置为“否”?当我以前将其设置为“否”时,我遇到了一个不同的问题,状态栏将为白色,但当我将显示UIImagePicker,然后关闭picker时从那时起,整个应用程序中的状态栏将始终为黑色(这是不正确的…需要为白色)当您选择“是”时,每个控制器都可以使用自己的样式。当您将其设置为“否”时,将始终使用plist中的设置。在序列图像板中选择状态栏的选项实际上不再可能。在序列图像板中选择状态栏的选项实际上不再可能。