iOS开发之状态栏的设置

  • 状态栏的字体为黑色: UIStatusBarStyleDefault

  • 状态栏的字体为白色: UIStatusBarStyleLightContent

一、设置样式的方法

iOS6 -- iOS9 :

[objc] view plain copy
 在CODE上查看代码片派生到我的代码片
  1. [[UIApplication sharedApplication] setStatusBarStyle:UIStatusBarStyleLightContent];  

 

iOS7 -- iOS9 :

[objc] view plain copy
 在CODE上查看代码片派生到我的代码片
  1. - (UIStatusBarStyle)preferredStatusBarStyle{  
  2.     return UIStatusBarStyleLightContent;  
  3. }  

 

iOS7以后以上两种方法都能修改状态栏样式。

注意:第一种方法修改的是全局样式;第二种方法修改的是局部样式(只影响当前控制器状态栏的样式)。

 

iOS开发】强制修改 iOS 状态栏颜色

下面截图给出修改 iOS 状态栏颜色的 4 种方式


Target.png

Info.plist.png

Storyboard.png

code.png

其中第四张图中的代码,直接写在你的任何一个 ViewController 的 class 里面就可以。

然而,以上 4 种方法存在两个问题:
1.无法在某一个 ViewController 里面任意切换
2.优先级不够高,可能会失效

下面祭出第 5 种方法:
首先去 Info.plist 里面,把 UIViewControllerBasedStatusBarAppearance 设置为 NO.


info.plist.png

然后在你想要改变状态栏颜色的任何地方,写下面这行代码

UIApplication.sharedApplication().setStatusBarStyle(UIStatusBarStyle.Default, animated: true)

 

UIApplication.sharedApplication().setStatusBarStyle(UIStatusBarStyle.LightContent, animated: true)

posted on 2016-08-17 11:29  程序“猿”  阅读(3480)  评论(0编辑  收藏  举报

导航