新建工程,狀態(tài)欄默認(rèn)豎屏顯示,橫屏隱藏,字體黑色。
-
未修改Info.plist情況下,狀態(tài)欄默認(rèn)由控制器管理,在對應(yīng)的視圖類中重寫該父類方法
需求:狀態(tài)欄橫豎屏都顯示/狀態(tài)欄隱藏
-(BOOL)prefersStatusBarHidden{
[super prefersStatusBarHidden];
return YES; //狀態(tài)欄隱藏 NO顯示
}
需求:指定狀態(tài)欄顏色
-(UIStatusBarStyle)preferredStatusBarStyle{
return UIStatusBarStyleLightContent; //狀態(tài)欄字體白色 UIStatusBarStyleDefault黑色
}
-
Info.plist中設(shè)置View controller-based status bar appearance為NO的情況下,以上方法失效。狀態(tài)欄由[UIApplication sharedApplication]來決定,對應(yīng)地方添加以下
設(shè)置View controller-based status bar appearance為NO.png
需求:狀態(tài)欄橫豎屏都顯示/狀態(tài)欄隱藏
[UIApplication sharedApplication].statusBarHidden = YES; //狀態(tài)欄隱藏 NO顯示
[[UIApplication sharedApplication] setStatusBarHidden:YES withAnimation:UIStatusBarAnimationSlide]; //狀態(tài)欄隱藏 NO顯示 同時(shí)可指定隱藏顯示的動(dòng)畫
需求:修改狀態(tài)欄顏色
[UIApplication sharedApplication].statusBarStyle = ![UIApplication sharedApplication].statusBarStyle; //UIStatusBarStyleLightContent狀態(tài)欄字體白色 UIStatusBarStyleDefault黑色
[[UIApplication sharedApplication]setStatusBarStyle:![UIApplication sharedApplication].statusBarStyle animated:YES]; //UIStatusBarStyleLightContent狀態(tài)欄字體白色 UIStatusBarStyleDefault黑色 同時(shí)可指定變換動(dòng)畫
注意:View controller-based status bar appearance-NO一但添加,通過重寫父類方法來控制狀態(tài)欄的地方都會失效,反過來也是。
期待你的評論建議O(∩_∩)O~