iOS-状态栏字体颜色【白色】【Xcode9.1】
2024-10-15 19:40:40
Xcode9之前
设置状态栏颜色首先在info.plist文件中,加入UIViewControllerBasedStatusBarAppearance = false;
<key>UIViewControllerBasedStatusBarAppearance</key>
<false/>
让后在delegate didFinishLaunchingWithOptions 方法中加入下面的代码就可以了;
[[UIApplication sharedApplication] setStatusBarStyle:UIStatusBarStyleLightContent animated:YES];
[[UIApplication sharedApplication] setStatusBarHidden:NO withAnimation:UIStatusBarAnimationFade];
Xcode9之后
xcode9.1我在设置状态栏字体为白色时,按照上面的方法行不通,搜罗了一圈有了结果;
同样在info.plist中,加入 UIViewControllerBasedStatusBarAppearance = true, 注意是true;
<key>UIViewControllerBasedStatusBarAppearance</key>
<true/>
接着新建一个基于 UINavigationController 的类 BaseNavigationController,一个基于 UIViewController 类 BaseViewController ;
BaseNavigationController.m
-(UIViewController *)childViewControllerForStatusBarStyle {
return self.topViewController;
} -(UIViewController *)childViewControllerForStatusBarHidden {
return self.topViewController;
}
BaseViewController.m
-(UIStatusBarStyle)preferredStatusBarStyle{
///这里设置白色
return UIStatusBarStyleLightContent;
}
-(BOOL)prefersStatusBarHidden{
return NO;
}
在项目中如果新建UINavigationController就继承BaseNavigationController,新建UIViewController就继承BaseViewController,这样就可以实现状态栏字体改变了;如果你是已经有的现有项目,可以扩展UINavigationController和UIViewController,来进行实现;
最新文章
- 总结Controller向View传值的方式(转)
- java调用shell获取返回值
- css之overflow
- 2. Basic environment configuration
- 分享几个Javascript 封装方法
- cocos2dx 搭建 android 平台 -2
- 提取html中的src 路径
- Contest 7.23(不知道算什么)
- 关于Winsock编程中IO重叠的概念
- ABP module-zero +AdminLTE+Bootstrap Table+jQuery权限管理系统第十三节--RBAC模式及ABP权限管理(附送福利)
- SVM公式推导笔记
- Ethercat 学习总结一:协议总结
- bash配色
- Jenkins 部署自动化测试脚本(15)
- Python复习笔记(十)Http协议--Web服务器-并发服务器
- TCP是如何实现三次握手的?
- python笔记之psutil模块
- Python: 矩阵与线性代数运算
- firedac odbc sql server driver连接占线导致另一个hstmt
- ViewPage实现无限轮播画廊效果