標籤:並且 bar 系統 apple ref dstat 怎麼辦 with 添加
前一段時間接手一個項目後,熟悉的過程中發現了不少問題,其中有一個就是關於狀態列的問題。
我們都知道:狀態列字型顏色在不同介面不一樣的,原因是系統設定的時候把狀態列的字型顏色的介面控制器設定的yes。
那麼問題來了,如果我自訂了導覽列,而狀態列的字型顏色是希望統一顏色,怎麼辦?
方法一:我們可以一個介面一個介面的去設定,因為apple已經給出了系統方法:
//預設的值是黑色的-(UIStatusBarStyle)preferredStatusBarStyle{ return UIStatusBarStyleDefault; }// 是否隱藏狀態列- (BOOL)prefersStatusBarHidden{ return NO;}
當然這樣,會很繁瑣,我們也不推薦使用,並且還會出現這種情況:設定後並沒有顯示效果。
方法二:在application中設定狀態列的字型顏色,(推薦使用)
typedef NS_ENUM(NSInteger, UIStatusBarStyle) { UIStatusBarStyleDefault = 0, // Dark content, for use on light backgrounds UIStatusBarStyleLightContent NS_ENUM_AVAILABLE_IOS(7_0) = 1, // Light content, for use on dark backgrounds UIStatusBarStyleBlackTranslucent NS_ENUM_DEPRECATED_IOS(2_0, 7_0, "Use UIStatusBarStyleLightContent") = 1, UIStatusBarStyleBlackOpaque NS_ENUM_DEPRECATED_IOS(2_0, 7_0, "Use UIStatusBarStyleLightContent") = 2,}
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions{ //設定狀態列字型顏色 [[UIApplication sharedApplication] setStatusBarStyle:UIStatusBarStyleLightContent animated:YES];}
如果只是這樣在設定 application 中設定,並沒有什麼用,還需要一些配置才行,具體如下:
在plist檔案中添加:View controller-based status bar appearance 並設定為 NO 即可。
iOS之 狀態列字型顏色的設定