033-iOS 修改状态栏的三种方法

一句话:不要想太多,先把单个VC的状态栏的颜色改成自己想要的颜色。

自从iOS 7 以后,一共有三个可以管理状态栏颜色的角色:UIApplication单例,单个UIViewController,UINavigationBar。
如果我们用其中一个修改不了状态栏颜色的时候,请尝试另外两个。

  • 方法一
//这个方法需要在info.plist文件中配置一下,告诉系统,状态栏的管理角色是UIApplication单例。
//到info.plist中,设置View controller–based status bar appearance 为NO
   [UIApplication sharedApplication].statusBarStyle = UIStatusBarStyleDefault;

  • 方法二
//系统默认info.plist中,View controller–based status bar appearance 为YES,也就是由当前的VC 控制状态栏的颜色
-(UIStatusBarStyle)preferredStatusBarStyle
{
    return UIStatusBarStyleLightContent;
}

  • 方法三
//前提条件是,当前vc在navigationController的viewcontrollers数组中。(就是当前VC有navigationController)
 [self.navigationController.navigationBar setBarStyle:UIBarStyleDefault];
  或者统一设置:
 [UINavigationBar appearance].barStyle = UIBarStyleBlack;

你可能感兴趣的:(033-iOS 修改状态栏的三种方法)