作者:arthur | 来源:互联网 | 2024-11-16 18:49
1. 全局设置一个颜色
若希望在整个应用中使用统一的状态栏字体颜色,可以在 Info.plist 文件中设置 View controller-based status bar appearance
为 NO
,然后在 AppDelegate 中设置状态栏样式:
[[UIApplication sharedApplication] setStatusBarStyle:UIStatusBarStyleLightContent];
其中,UIStatusBarStyleLightContent
表示浅色字体,UIStatusBarStyleDefault
表示深色字体。
2. 页面特定设置颜色
如果需要在不同的页面中显示不同的状态栏字体颜色,可以将 View controller-based status bar appearance
设置为 YES
,并在每个视图控制器中重写 preferredStatusBarStyle
方法:
- (UIStatusBarStyle)preferredStatusBarStyle { return UIStatusBarStyleLightContent; // 或者返回 UIStatusBarStyleDefault }
如果使用了 UINavigationController
,需要在导航控制器中实现 childViewControllerForStatusBarStyle
方法,以确保子视图控制器的状态栏样式生效:
- (UIViewController *)childViewControllerForStatusBarStyle { return self.topViewController; }
通过以上方法,可以灵活地控制不同页面的状态栏字体颜色,提升用户体验。