使用Objective C将状态栏文本颜色更改为iOS 9 [重复]

问题描述 投票:143回答:6

这个问题在这里已有答案:

如何在iOS 9中更改状态栏文本颜色。 如何将状态栏文本颜色更改为白色 请帮我。 谢谢。

objective-c ios9 xcode7 statusbar
6个回答
371
投票

如果您按照reza的方法,启动屏幕仍然是黑色。

这种方法更好。

  1. Project - > Target
  2. Status Bar Style设为Light Project Setting
  3. View controller-based status bar appearanceNO设为Info.plist

113
投票

使用UINavigationController并将其导航栏的barStyle设置为.Black。在你的AppDelegate.m文件中超过这一行。

navigationController.navigationBar.barStyle = UIBarStyleBlack;

如果您没有使用UINavigationController,请在ViewController.m文件中添加以下代码。

- (UIStatusBarStyle)preferredStatusBarStyle
{
    return UIStatusBarStyleLightContent;
}

并将方法调用到此行:

[self setNeedsStatusBarAppearanceUpdate];

42
投票

第一集

[[UIApplication sharedApplication] setStatusBarStyle:UIStatusBarStyleLightContent];

转到AppDelegate,找到itsdidFinishLaunchingWithOptions方法并执行:

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {

[[UIApplication sharedApplication] setStatusBarStyle:UIStatusBarStyleLightContent];

}

然后在plist中将View controller-based status bar appearance设置为NO。


33
投票
  1. info.plist文件UIViewControllerBasedStatusBarAppearance中添加一个键并将其设置为YES
  2. 在ViewController的viewDidLoad方法中添加一个方法调用: [self setNeedsStatusBarAppearanceUpdate];
  3. 然后在viewController文件中粘贴以下方法: - (UIStatusBarStyle)preferredStatusBarStyle { return UIStatusBarStyleLightContent; }

11
投票

将密钥View controller-based status bar appearance添加到Info.plist文件,并将其布尔类型设置为NO

viewDidLoad中插入一行代码(这适用于提到它的特定类)

 [UIApplication sharedApplication].statusBarStyle = UIStatusBarStyleLightContent;

1
投票

iOS状态栏只有2个选项(黑色和白色)。你可以在AppDelegate中试试这个:

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions{
    [[UIApplication sharedApplication] setStatusBarStyle: UIStatusBarStyleLightContent];
}
© www.soinside.com 2019 - 2024. All rights reserved.