iPhone 5/SE显示白色状态栏,iPhone 6/7显示黑色状态栏

问题描述:

我以前使用的是[[UIApplication sharedApplication] setStatusBarStyle:UIStatusBarStyleLightContent];,它工作正常,但在iOS 9.0中不推荐使用。iPhone 5/SE显示白色状态栏,iPhone 6/7显示黑色状态栏

在此之后:
UIApplication.sharedApplication().setStatusBarStyle() deprecated in iOS 9

在“部署信息”下的项目设置

我选择了“光”作为“状态栏样式”。 检查我的Info.plist文件,我也将“基于视图控制器的状态栏外观”设置为NO。

现在“小”iPhone 5S/SE将正确显示一个白色的状态栏,但iPhone 6(+)/ 7(+)将显示一个黑色的状态栏。

我该如何解决这个问题?

[解决]

其实,这个发现后:Status Bar showing black text, only on iPhone 6 iOS 8 simulator

我能做得出来。我不得不为非工作的iPhone模型启动图像,或者我现在做的,使用启动故事板。现在一切都是白色的状态栏。

其实,这个发现后: Status Bar showing black text, only on iPhone 6 iOS 8 simulator

我能做得出来。我不得不为非工作的iPhone模型启动图像,或者我现在做的,使用启动故事板。现在一切都是白色的状态栏。

我认为你必须去你的项目的常规设置,并设置状态栏式轻,比去信息Info.plist文件,并设置“查看基于控制器的状态栏外观”设置为NO。如果它不起作用,你必须像这样在ViewControllers中创建UIStatusbar的对象。

override var preferredStatusBarStyle: UIStatusBarStyle { 
     return .lightContent 
    } 

呼叫preferredStatusBarStyle在视图中加载。

对于Swift。

override var preferredStatusBarStyle: UIStatusBarStyle { 
    return .lightContent 
} 

对于目标C

- (UIStatusBarStyle)preferredStatusBarStyle 
{ 
    return UIStatusBarStyleLightContent; 
} 

使用的Xcode

1.Go到项目 ==>目标

2.Set Status Bar Style to Light

3.设定基于控制器的视图状态栏外观等于NO的Info.plist