iOS-状态栏字体颜色【白色】【Xcode9.1】
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,来进行实现;
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 地球OL攻略 —— 某应届生求职总结
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 提示词工程——AI应用必不可少的技术
· .NET周刊【3月第1期 2025-03-02】