美文网首页
iOS修改每个页面系统状态栏文字颜色。

iOS修改每个页面系统状态栏文字颜色。

作者: 雨洒潇湘 | 来源:发表于2018-01-16 15:28 被阅读21次

    前言

    最近项目有需求,需要在状态栏,导航栏透明的情况下状态栏文字颜色为白色。系统默认是黑色。看了几篇文章,说的都是启动的时候,在顶部的时候。很多都没有说到点子上。我们需要每个页面可以控制,甚至根据根据页面的偏移量控制。

    修改方法

    注意下面我说的前提是使用系统导航栏的情况下,请勿死板硬套。
    首先在Info.plist文件中添加View controller-based status bar appearance键值对,bool类型,设置成NO。
    在需要修改的页面中的-(void)viewWillAppear:(BOOL)animated 方法中加入 [UIApplication sharedApplication].statusBarStyle=UIStatusBarStyleLightContent;(白色情况)。在- (void)viewWillDisappear:(BOOL)animated方法中 中加入 [UIApplication sharedApplication].statusBarStyle=UIStatusBarStyleDefault;(默认黑色)。
    这样当进入此页面时。状态栏文字颜色为白色。离开时为默认黑色。
    如果该界面可滑动可在- (void)scrollViewDidScroll:(UIScrollView *)scrollView 代理方法中根据偏移量更改状态栏文字颜色。

    文章参考

    (ios 状态栏statusBar的背景颜色)这个文章还好,就是少了对Info.plist的设置。

    相关文章

      网友评论

          本文标题:iOS修改每个页面系统状态栏文字颜色。

          本文链接:https://www.haomeiwen.com/subject/nrisoxtx.html