状态栏iOS 7

状态栏iOS 7,ios,objective-c,ios7,statusbar,uistatusbar,Ios,Objective C,Ios7,Statusbar,Uistatusbar,我想在启动屏幕中隐藏状态栏,并用白色显示给viewController 我为此做了以下工作: 添加的状态栏最初在info.plist中隐藏为“是” In–BOOLapplication:didFinishLaunchingWithOptions:method我添加了[[UIApplication sharedApplication]setStatusBarStyle:UIStatusBarStyleLightContent] 但状态栏内容仍然是黑色的。 有人能帮我将状态栏内容颜色更改为白色吗?您

我想在启动屏幕中隐藏状态栏,并用白色显示给viewController

我为此做了以下工作:

添加的状态栏最初在info.plist中隐藏为“是”

In–BOOLapplication:didFinishLaunchingWithOptions:method我添加了[[UIApplication sharedApplication]setStatusBarStyle:UIStatusBarStyleLightContent]

但状态栏内容仍然是黑色的。
有人能帮我将状态栏内容颜色更改为白色吗?

您需要在info.list文件中将“基于视图控制器的状态栏外观”设置为“是”

然后在特定的视图控制器中

- (UIStatusBarStyle)preferredStatusBarStyle
{
   return UIStatusBarStyleLightContent;
}

您需要在info.list文件中将“基于视图控制器的状态栏外观”设置为“是”

然后在特定的视图控制器中

- (UIStatusBarStyle)preferredStatusBarStyle
{
   return UIStatusBarStyleLightContent;
}

我同意纳齐克的回答。但是,如果您使用导航控制器作为窗口的根视图控制器,请确保preferredStatusBarStyle不起作用。因为它永远不会被操作系统调用。在这种情况下,在info.plist中将基于视图控制器的状态栏外观设置为“否”后

[[UIApplication sharedApplication] setStatusBarStyle:UIStatusBarStyleLightContent]; 

很好。我同意纳齐克的回答。但是,如果您使用导航控制器作为窗口的根视图控制器,请确保preferredStatusBarStyle不起作用。因为它永远不会被操作系统调用。在这种情况下,在info.plist中将基于视图控制器的状态栏外观设置为“否”后

[[UIApplication sharedApplication] setStatusBarStyle:UIStatusBarStyleLightContent]; 

可以正常工作。

您可能需要在视图控制器中实现–preferredStatusBarStyle方法。您可能需要在视图控制器中实现–preferredStatusBarStyle方法。