默认电池栏是由controller来管理的,
我们可以在controller 中使用 -(UIStatusBarStyle)preferredStatusBarStyle 方法来改变电池栏的颜色。
-(UIStatusBarStyle)preferredStatusBarStyle
{
return UIStatusBarStyleLightContent;
}
UIStatusBarStyleDefault = 0,
默认为黑色
UIStatusBarStyleLightContent NS_ENUM_AVAILABLE_IOS(7_0) = 1,
为高亮状态亮色
下面两个方法在iOS7 以后 都使用高亮状态白色来替代,在此不做讨论啦。
UIStatusBarStyleBlackTranslucent NS_ENUM_DEPRECATED_IOS(2_0, 7_0, "Use UIStatusBarStyleLightContent") = 1,
UIStatusBarStyleBlackOpaque NS_ENUM_DEPRECATED_IOS(2_0, 7_0, "Use UIStatusBarStyleLightContent") = 2,
但是一般电池栏的状态我们都将给application来管理,这样我们可以更便捷的管理所有页面的电池栏
因此我们需要在info 文件中 做一些修改
增加 选中栏,其意思是 是否允许controller来管理电池栏,我们选择NO。
这时,我们就会发现controller中的 -(UIStatusBarStyle)preferredStatusBarStyle 方法已经不管用了
我们需要在app delegate中定义电池栏的样式
application中直接修改其statusBarStyle属性就好啦 。
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
application.statusBarStyle = UIStatusBarStyleDefault ;
return YES;
}