2

在我的应用程序中,我使用 ios 6 作为部署目标。

我在.Plist 中将基于视图控制器的状态栏外观设置为否。状态栏的背景颜色在 ios 7 上更改为绿色。但是当我在 ios 6 上运行我的应用程序时,它仅在显示启动图像时保持黑色,其余的对整个应用程序都很好。

我也在我的应用程序委托中使用此代码...

if (!SYSTEM_VERSION_GREATER_THAN_OR_EQUAL_TO(@"7.0")) {
    [[UIApplication sharedApplication] setStatusBarStyle:UIStatusBarStyleDefault];
}
else
{
    [[UIApplication sharedApplication] setStatusBarStyle:UIStatusBarStyleLightContent];
}

如何在 ios 6 和 ios 7 上启动应用程序时更改状态栏背景颜色和文本颜色的背景。

4

3 回答 3

0

在 appdelegate.m 中。

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
    // Override point for customization after application launch.

    [[UIApplication sharedApplication] setStatusBarStyle:UIStatusBarStyleLightContent];

    return YES;
}
于 2014-01-18T14:18:21.330 回答
0

因为您的导航栏是半透明的 = YES,这是 iOS 7 的默认设置。也许,您还为 iOS 6 设置了 translucent = YES。对于 iOS 6,将其设置为 NO,以便它也适用于应用程序启动。

于 2014-01-18T12:42:44.380 回答
0

1)UIViewControllerBasedStatusBarAppearance在plist中设置为YES

2)在 viewDidLoad 做一个[self setNeedsStatusBarAppearanceUpdate];

3)添加以下方法:

 -(UIStatusBarStyle)preferredStatusBarStyle{ 
    return UIStatusBarStyleLightContent; 
 } 
于 2013-10-22T12:07:36.773 回答