最近写了一个引导页的小demo,发现状态栏为黑色和背景很不搭,所以就研究了一下ios系统的状态栏, 写一个总结博客记录一下.
从iOS7开始,系统为我们提供了2种状态栏的管理方式,
先介绍第一种:
通过UIApplication管理, 对于这个应用程序来说,只设置一次状态栏,并且可以提供动画效果.
第一步:
@implementation AppDelegate
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
// Override point for customization after application launch.
// 设置状态栏为白色
[[UIApplication sharedApplication] setStatusBarStyle:UIStatusBarStyleLightContent];
// 设置状态栏为黑色,并提供动画效果
[[UIApplication sharedApplication] setStatusBarStyle:UIStatusBarStyleDefault animated:YES];
return YES;
}
第二步:
在info.plist 文件中添加设置:
View controller-based status bar appearance 值设置为NO
第二种方法:
通过UIVIewController管理, 对于应用程序来说,可以轻松的管理不同视图状态栏的可见性和样式
@implementation ViewController
#pragma mark - 设置状态栏的样式
- (UIStatusBarStyle)preferredStatusBarStyle
{
// 默认为黑色
return UIStatusBarStyleDefault;
// 设置为白色
return UIStatusBarStyleLightContent;
}
#pragma mark - 设置状态栏是否隐藏
- (BOOL)prefersStatusBarHidden
{
return NO;
}
在对状态栏进行设置时,要根据自己的需求,选择不同的方法.