修改狀態欄的文字顏色和背景色
阿新 • • 發佈:2017-08-18
res view red plist log cnblogs barh resp shared
一.修改狀態欄文字顏色
這裏修改文字顏色分兩種情況
(1)導航欄是隱藏狀態
如果導航欄為隱藏狀態 可以直接在控制器中重寫如下方法
// 重寫方法 狀態欄白色 - (UIStatusBarStyle)preferredStatusBarStyle{ return UIStatusBarStyleLightContent; }
這樣狀態欄的文字就可以變成白色了
(2)導航欄不是隱藏狀態
如果導航欄不是隱藏狀態 會發現方法(1)沒有作用了
這時要采用第二種方法, 一共有兩個步驟
1 -> 設置info.plist 字段 View controller-based status bar appearance 為NO (如果沒有此字段 請添加)
2 -> 在代碼中寫上如下代碼
[[UIApplication sharedApplication] setStatusBarStyle:UIStatusBarStyleLightContent];
如果你做了上面兩個步驟且操作沒有錯誤的話 就會發現狀態欄文字變為了白色
二.修改狀態欄背景顏色
// 隱藏導航欄 self.navigationController.navigationBarHidden = YES; // 修改狀態欄顏色 UIView *statusBar = [[[UIApplication sharedApplication] valueForKey:@"statusBarWindow"] valueForKey:@"statusBar"]; if ([statusBar respondsToSelector:@selector(setBackgroundColor:)]) { statusBar.backgroundColor = getColor(mainColor); }
修改狀態欄的文字顏色和背景色