关于状态栏的颜色的自定义的问题
2016-03-16 18:38
411 查看
https://segmentfault.com/a/1190000003482218好文章的参考地址
关于自定义状态栏的问题第一步将
接下来就是修改状态栏的时候了
只要你记住你当前的页面的跟控制器是谁,然后使用下面的方法就可以控制你任意想改的状态栏的状态了,(虽然只有两种状态栏的样式。。。。)
A:-(void)setNeedsStatusBarAppearanceUpdate{
[self preferredStatusBarStyle];
}
B:- (UIStatusBarStyle)preferredStatusBarStyle{
return UIStatusBarStyleLightContent;
}
我把函数A去掉之后发现方法B还是好使的,参考上面的文章里面说的,方法A只是起到了一个保险的作用,(我其实不知道保险啥,保险方法B能够运行吗,估计是吧,大家可以研究下)
[TTRootViewController sharedInstance].mainViewController这就是我的根控制器;[TTRootViewController sharedInstance].mainNavViewController好像和前面的效果都是一样的,至少在换状态栏这里面的效果是一样的,不知道在其他地方会不会有什么不同。
为什么要说跟控制器呢,因为往往我们要跳转到其他的B页面再返回A页面,这时我们返回回来的时候状态栏可能就发生改变了,因为上一个页面的状态栏和返回来的状态栏的颜色不对,所以我们就需要用在A跳到B页面的时候用的必须是A的根视图来进行跳转,这样我们返回回来的 时候就不会因为B页面的状态栏的颜色而影响到A页面的状态栏的颜色了。
关于自定义状态栏的问题第一步将
info.plist文件的
View controller-based status bar appearance设置为
YES,即可开启由VC来控制状态栏的功能,
接下来就是修改状态栏的时候了
只要你记住你当前的页面的跟控制器是谁,然后使用下面的方法就可以控制你任意想改的状态栏的状态了,(虽然只有两种状态栏的样式。。。。)
A:-(void)setNeedsStatusBarAppearanceUpdate{
[self preferredStatusBarStyle];
}
B:- (UIStatusBarStyle)preferredStatusBarStyle{
return UIStatusBarStyleLightContent;
}
我把函数A去掉之后发现方法B还是好使的,参考上面的文章里面说的,方法A只是起到了一个保险的作用,(我其实不知道保险啥,保险方法B能够运行吗,估计是吧,大家可以研究下)
[TTRootViewController sharedInstance].mainViewController这就是我的根控制器;[TTRootViewController sharedInstance].mainNavViewController好像和前面的效果都是一样的,至少在换状态栏这里面的效果是一样的,不知道在其他地方会不会有什么不同。
为什么要说跟控制器呢,因为往往我们要跳转到其他的B页面再返回A页面,这时我们返回回来的时候状态栏可能就发生改变了,因为上一个页面的状态栏和返回来的状态栏的颜色不对,所以我们就需要用在A跳到B页面的时候用的必须是A的根视图来进行跳转,这样我们返回回来的 时候就不会因为B页面的状态栏的颜色而影响到A页面的状态栏的颜色了。
相关文章推荐
- 自己定义字体之BMFont的使用
- 第三次作业
- <media="all"
- 超强JavaScript编辑器WebStorm代码提示迟缓问题及其它想到的
- iOS 生成二维码
- 在Centos6.5下安装AR8161网卡驱动
- iOS企业开发In House ipa发布流程
- hibernate 插入数据mysql 表名关键字冲突
- android 实现录像时拍照
- 顺时针打印数组
- OPenGL 简单介绍
- gcc 使用入门教程
- View的探讨(一):自定义属性(attr),XML开始到java
- 顺时针打印数组
- truncate 、delete与drop三者的异同
- 全排序
- UITextField - 解决键盘遮住View & 密文设定 & 实例
- nginx添加用户认证
- ZABBIX3.0 安装问题记录
- Arcgis学习笔记基础学习