ios专题iOS开发

ios状态栏UIStatusBar设置

2017-11-24  本文已影响28人  HeavenWong

状态栏就是显示运营商、时间、电量、WiFi的那块

隐藏和显示状态栏

一、隐藏状态栏

iOS8以上的适配:

当然如果想一直隐藏手机状态栏, 就不用去执行步骤2, 如果想等项目启动完成后再状态栏显示出来就去执行步骤2.
1、 开启项目- General - Status Bar Style -勾选Hide during application launch
2、 在appDelegate.m文件内

- (BOOL)application:(UIApplication *)application
didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
//启动完成后再显示手机状态栏
application.statusBarHidden = NO;
return YES;
}
iOS7以下的适配:

第一步:在info.plist中添加一个字段:view controller -base status bar 设置为NO
第二步:在一个所有界面都继承的父类里添加:

  if (IOS7_OR_LATER) { // 判断是否是IOS7
    [[UIApplication sharedApplication] setStatusBarStyle:UIStatusBarStyleLightContent animated:NO];
  }

二、显示状态栏

application.statusBarHidden = NO;

状态栏颜色

一、背景色


二、前景色

方法1 方法2 在info.plist设置 在控制器.m设置

navigationBar的setBarTintColor接口,用此接口可改变statusBar的背景色

注意:一旦你设置了navigationBar的- (void)setBackgroundImage:(UIImage *)backgroundImage forBarMetrics:(UIBarMetrics)barMetrics接口,那么上面的setBarTintColor接口就不能改变statusBar的背景色,statusBar的背景色就会变成纯黑色。

另辟蹊径

创建一个UIView,
设置该UIView的frame.size 和statusBar大小一样,
设置该UIView的frame.origin 为{0,-20},
设置该UIView的背景色为你希望的statusBar的颜色,
在navigationBar上addSubView该UIView即可。

refer:

上一篇下一篇

猜你喜欢

热点阅读