产品要实现状态栏字体颜色,不同页面显示不同的颜色,要实现这个需求其实很简单,只不过由于自己之前没做过,所以绕了一些弯路,UIStatusBarStyle有如下几个枚举值
UIStatusBarStyleDefault 默认值是黑色
UIStatusBarStyleLightContent 白色
首先由于根视图是navgationController,于是我在根视图重写了如下几个方法:
-(UIStatusBarStyle)preferredStatusBarStyle
{
return UIStatusBarStyleLightContent;
}、
//状态栏显示最上面一次控制器所需要的颜色
-(UIViewController *)childViewControllerForStatusBarStyle{
return self.topViewController;
}
// 是否隐藏状态栏
- (BOOL)prefersStatusBarHidden
{
return NO;
}
通过这样的设置,就使得状态栏字体颜色为白色了,但是要使得里面的子视图颜色改变,则需要在子视图里面也加上如下这个方法,原因我就不多加赘述了
-(UIStatusBarStyle)preferredStatusBarStyle
{
return UIStatusBarStyleDefault;
}
原文地址:https://blog.csdn.net/ForeverMyheart/article/details/88993027
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。