iOS 修改状态栏字体颜色(亲测,好用)

Posted 听风观雨阁

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了iOS 修改状态栏字体颜色(亲测,好用)相关的知识,希望对你有一定的参考价值。

有时候我们需要根据不同的背景修改状态栏字体的颜色,我的方法比较复杂,如果有更好用的方法欢迎大家提出来,我会持续更新的。
#方法一
1.首先是设置info.plist 文件:
  将View controller-based status bar appearance 的值设置为NO。
2.在AppDelegate.m 的方法中如下设置,默认会显示黑色等于为你的app状态栏设置一个主颜色


- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
//设置全局状态栏字体颜色为黑色
[UIApplication sharedApplication].statusBarStyle = UIStatusBarStyleDefault;
//设置全局状态栏字体颜色为白色
// [UIApplication sharedApplication].statusBarStyle = UIStatusBarStyleLightContent;

return YES;
}

3.在需要设置为白色的地方添加如下代码:

[UIApplication sharedApplication].statusBarStyle = UIStatusBarStyleLightContent;

4.在需要变回黑色的地方添加如下代码:

[UIApplication sharedApplication].statusBarStyle = UIStatusBarStyleDefault;


例如你想将一个控制器的状态栏的字体颜色设为白色代码如下:

#pragma mark - 设置状态栏颜色
-(void)viewWillAppear:(BOOL)animated{
[super viewWillAppear:animated];
[UIApplication sharedApplication].statusBarStyle = UIStatusBarStyleLightContent;


}

-(void)viewWillDisappear:(BOOL)animated

{

[super viewWillDisappear:animated];

[UIApplication sharedApplication].statusBarStyle = UIStatusBarStyleDefault;

}


这里要注意,在UITabBarController中如果选项卡每个页面都加载出来,那么在你切换页面时,会先调用下一个页面的viewWillAppear方法,再调用本页面的viewWillDisappear方法,会影响状态栏的字体颜色改变.




































以上是关于iOS 修改状态栏字体颜色(亲测,好用)的主要内容,如果未能解决你的问题,请参考以下文章

状态栏怎么修改字体颜色

李洪强iOS开发之-修改状态栏的字体的颜色

在iOS7中修改状态栏字体的颜色-b

Android实现修改状态栏背景字体和图标颜色的方法

Android实现修改状态栏背景字体和图标颜色的方法

状态栏如何修改字体颜色,电池颜色,WIFI颜色啊