状态栏(UIStatus)的使用
状态栏(UIStatus)是指iPhone、iPad、iPod的顶部用于显示网络、时间、电量等的部分,它是高度为20的控件,状态栏的windowLevel为UIWindowLevelStatusBar,而window的windowLevel为UIWindowLevelNormal。所以一般情况下,状态栏位于window之上。
-
状态栏字体颜色设置
在老版的iOS中,状态栏永远都是白色风格。而在iOS7中我们可以根据需求修改每个viewController中状态栏的外观。
iOS中使用UIStatusBarStyle控制状态栏的字体颜色。在iOS7中,支持两种样式:暗色和亮色,默认情况下,状态栏显示是暗色。也就是说状态栏上的时间、电池指示器和Wi-Fi信号吸纳事为暗色。- UIStatusBarStyleDefault
- UIStatusBarStyleLightContent
对于状态栏字体颜色设置有三种方法:
[[UIApplication sharedApplication] setStatusBarStyle:UIStatusBarStyleDefault];
第一种方法(需单个设置):
—————》MainNavigationController.m
- (UIStatusBarStyle)preferredStatusBarStyle
{
// return self.visibleViewController.preferredStatusBarStyle;此句要和下句一同使用才能改变状态栏的样式,注意只能改变单个;
}
————》MovieViewController.m
//修改状态栏的样式
1. (UIStatusBarStyle)preferredStatusBarStyle
{
return UIStatusBarStyleLightContent;
}
第二种方法(全局):
我们也可以使用UIApplication的statusBarStyle方法来设置状态栏,不过,首先需要停止使用View controller-base status bar appearance 。在info.plist文件中进行修改,添加一个新的key,名字为View controller-base status bar appearance,并将其值设置为NO。
然后可以使用下面的代码来设置状态栏德 风格了:
[[UIApplication sharedApplication]
setStatusBarStyle:UIStatusBarStyleLightContent];
第三种方法:
可以在info中Status bar style(UIStatusBarStyle)对应的Value设置为UIStatusBarStyleLightContent。
也可以在General中将Status Bar Style选择为Light。
- 状态栏的显示与隐藏
[[UIApplication sharedApplication] setStatusBarHidden:NO];
可以在Info中将Status bar is initially hidden(UIStatusBarHidden)对应的Value设置为Yes。
也可以在General中将Hide status bar勾选: