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方法,会影响状态栏的字体颜色改变.

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 176,328评论 25 709
  • ¥开启¥ 【iAPP实现进入界面执行逐一显】 〖2017-08-25 15:22:14〗 《//首先开一个线程,因...
    小菜c阅读 11,884评论 0 17
  • 如果我能拯救一个生命一一一一一一 我就不虚此生一一一 如果...
    骆一鸣阅读 2,166评论 0 3
  • (三) 去上学时候一直都是妈妈拉着后面的一一走的,但是回家的路上一一反而蹦蹦跳跳的跑在了前面,使劲地拽着妈妈快点走...
    林隅阅读 1,630评论 1 1
  • f.lux 跨平台免费的工具,让你电脑显示的颜色适应白天和晚上,它根据用户定义的经纬度、邮编或城市名称所在的位置以...
    i云哲阅读 3,798评论 0 1

友情链接更多精彩内容