ios中修改状态栏颜色的方法

来源:互联网 发布:免费数据库有哪些 编辑:程序博客网 时间:2024/06/01 18:55
工作中会经常遇到需要修改状态栏显示的颜色,实践发现,修改其实很简单,只需要在项目的infoPlist文件中添加一项:View controller-based status bar appearance,添加后,它的默认值就是NO,表示由系统管理状态栏,此时在AppDelegate中添加如下代码:

[UIApplicationsharedApplication].statusBarStyle =UIStatusBarStyleLightContent;

这样就可以让状态栏中显示为亮色。

   如果不想应用里所有的页面状态栏都是相同的颜色,可以将infoPlist中View controller-based status bar appearance设置为YES,这就表示将statusBar的控制权交给了各自的控制器,在需要修改状态栏的控制器viewDidLoad中写上[UIApplication sharedApplication].statusBarStyle = UIStatusBarStyleLightContent;即可单独为本控制器修改状态栏。或者还有一种方式,ios很贴心的在UIViewController也增加了几个接口,
目的是让状态栏根据当前显示的UIViewController来定制statusBar的前景部分。

- (UIStatusBarStyle)preferredStatusBarStyle;

- (UIViewController *)childViewControllerForStatusBarStyle;

- (void)setNeedsStatusBarAppearanceUpdate

只需要在控制器中实现preferredStatusBarStyle方法,直接返回需要的状态栏设置就可以了。


0 0
原创粉丝点击