iOS8中的状态栏在应用启动时变为黑色

时间:2014-09-29 19:44:41

标签: ios8

我正在研究ios8应用程序。当我启动应用程序时,状态栏在变为正常之前会暂时保持黑色状态。我已经添加了  [[UIApplication sharedApplication] setStatusBarStyle:UIStatusBarStyleBlackOpaque animated:NO]; 在webViewDidFinishLoad中。我有 UIStatusBarStyle     UIStatusBarStyleBlackOpaque 在我的plist文件中。我想在应用程序启动时将正常状态栏置于顶部。 这仅在iOS8上发生。 有人可以帮我这个吗?

1 个答案:

答案 0 :(得分:0)

自iOS 7以来,

UIStatusBarStyleBlackOpaque已被弃用,并且从枚举设置的方式来看,看起来它可能具有UIKit不知道如何处理的值:

typedef NS_ENUM(NSInteger, UIStatusBarStyle) {
    UIStatusBarStyleDefault                                     = 0, // Dark content, for use on light backgrounds
    UIStatusBarStyleLightContent     NS_ENUM_AVAILABLE_IOS(7_0) = 1, // Light content, for use on dark backgrounds

    UIStatusBarStyleBlackTranslucent NS_ENUM_DEPRECATED_IOS(2_0, 7_0, "Use UIStatusBarStyleLightContent") = 1,
    UIStatusBarStyleBlackOpaque      NS_ENUM_DEPRECATED_IOS(2_0, 7_0, "Use UIStatusBarStyleLightContent") = 2,
};

请注意…Opaque的值为2,与任何指定的样式都不对应。我建议将Info.plist中的样式值切换为UIStatusBarStyleLightContent。 -webViewDidFinishLoad:也是一个设置样式的奇怪地方 - 将它放在-applicationDidFinishLaunching:或类似内容中更合适。