iOS更改状态栏文字颜色

iOS开发中经常会遇到当导航栏颜色比较深时需要将StatusBar默认的黑色文字改成白色,iOS9之后更改分为两步。

iOS中状态栏style分为两种:

UIStatusBarStyleLightContent //白色文字
UIStatusBarStyleDefault //默认黑色

1.在info.plist文件中添加属性View controller-based status bar appearance,并设置为NO;

2.在APPDelegate中加入以下代码:

    [UIApplication sharedApplication].statusBarStyle = UIStatusBarStyleLightContent;

如果不执行第一步操作,则这一段代码将不执行。

执行完两步后状态栏应该就更改了,但有时会需要更改单个页面的状态栏颜色,需要在更改界面实现以下两个方法

- (void)viewWillAppear:(BOOL)animated {
    [super viewWillAppear:animated];
    [UIApplication sharedApplication].statusBarStyle = UIStatusBarStyleDefault;
}

-(void)viewWillDisappear:(BOOL)animated
{
    [super viewWillDisappear:animated];
    [UIApplication sharedApplication].statusBarStyle = UIStatusBarStyleLightContent;
}

你可能感兴趣的:(iOS更改状态栏文字颜色)