天天看點

iOS 隐藏電量資訊、信号等狀态資訊狀态欄

在控制器添加如下代碼即可:

1、//隐藏狀态欄

- (BOOL)prefersStatusBarHidden

{

    return YES;

}

2、單獨修改狀态欄背景顔色方法:

例如:

[self setStatusBarBackgroundColor:[UIColor whiteColor]];

- (void)setStatusBarBackgroundColor:(UIColor *)color

{

    UIView *statusBar = [[[UIApplication sharedApplication] valueForKey:@"statusBarWindow"] valueForKey:@"statusBar"];

    if ([statusBar respondsToSelector:@selector(setBackgroundColor:)])

    {

        statusBar.backgroundColor = color;

    }

}

全局設定狀态欄的文字顔色

3、修改狀态欄字型、電量、信号标示的顔色:在info.plist檔案中添加View controller-based status bar appearance,将其設定為no;添加Status bar style,将其可以設定為UIStatusBarStyleLightContent(代表白色)或者設定為

UIStatusBarStyleDefault

(這個預設是黑色)

代碼修改:

  • AppDelegate

    檔案中,實作下面方法(在其他 UIViewController 中也有效):
/* OC */
[UIApplication sharedApplication].statusBarStyle = UIStatusBarStyleLightContent;
  
/* Swift */
UIApplication.sharedApplication().statusBarStyle = UIStatusBarStyle.LightContent;
           

4、

背景部分,簡單來說,就是狀态欄的背景顔色,其實系統狀态欄的背景顔色一直是透明的狀态,當有導航欄時,導航欄背景是什麼顔色,狀态欄就是什麼顔色,沒有導航欄時,狀态欄背後的視圖時什麼顔色,它就是什麼顔色。

/* 這個方法是設定導航欄背景顔色,狀态欄也會随之變色 */
[self.navigationController.navigationBar setBarTintColor:[UIColor redColor]];