- iOS 9后
[UIApplication sharedApplication].statusBarStyle = UIStatusBarStyleLightContent;
的方式已經(jīng)被蘋果公司給淘汰,再次使用時(shí)會(huì)發(fā)生警告惭嚣,再者該方法僅僅使用與某一控制器的狀態(tài)欄灭贷。 - 對(duì)于多控制器的應(yīng)用來說一個(gè)個(gè)頁面設(shè)置太麻煩莽龟,所以我選擇了一種非常簡潔的方法套像,只需修改兩處配置徒河,更改全局狀態(tài)欄顏色携龟。
- PS:該方法有局限性蒸健,只能修改為白色或者黑色。
第一步运悲,修改Info.plist文件:
- 工程的Info.plist文件中默認(rèn)是沒有
View controller-based status..
這一項(xiàng)的龄减,需要手動(dòng)添加; - 添加后修改其vlaue值為
NO
班眯。
第二步希停,修改工程默認(rèn)的狀態(tài)欄樣式:
- 默認(rèn)(default)為黑色
-
(第一種方式)light 為白色
-(第二種方式)或者再AppDelegate.m中設(shè)置:
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
// Override point for customization after application launch.
// 添加如下代碼,改方法在iOS9之后被廢棄署隘,建議在控制器中重寫`[UIViewController preferredStatusBarStyle]`方法宠能。后面會(huì)介紹
[[UIApplication sharedApplication] setStatusBarStyle:UIStatusBarStyleLightContent];
return YES;
}
在各自控制器中設(shè)置狀態(tài)欄顏色
1.首先還是的設(shè)置plist文件
- 如下圖確保
View controller-based status bar appearance
該項(xiàng)為YES
2.在控制器中重寫- (UIStatusBarStyle)preferredStatusBarStyle
方法:
- (UIStatusBarStyle)preferredStatusBarStyle {
// 返回你所需要的狀態(tài)欄樣式
return UIStatusBarStyleLightContent;
}
簡單吧,如果需要自定義顏色好像可以定義同意的navigationBar磁餐。