2016-02-29 46 views
0

我的狀態欄設置爲UIStatusBarStyleLightContent,在所有其他設備(5,5S,6,6 Plus)中,狀態欄以白色文本顯示。我的應用程序的背景顏色是黑色的,所以狀態欄有黑色背景,這就是爲什麼我需要狀態欄文本爲白色。狀態欄沒有在iPhone 4S上顯示

所以只有當我在4S上測試狀態欄文本顯示爲黑色。這是一個已知的錯誤?有沒有任何工作可以讓4S擁有正確的狀態欄風格?

這就是爲什麼我在AppDelegate中完成

:在每個視圖控制器我的應用程序內

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions { 

    application.statusBarStyle = UIStatusBarStyleLightContent; 
} 

我把這個在viewDidLoad中添加此方法:

- (void) viewDidLoad { 
    [self setNeedsStatusBarAppearanceUpdate]; 
} 

- (UIStatusBarStyle)preferredStatusBarStyle 
{ 
    return UIStatusBarStyleLightContent; 
} 

而且,在我的info.plist我有這個:

Status bar style = UIStatusBarStyleLightContent 
+0

你使用autolayout還是多個故事板? –

+0

我正在使用自動佈局,但只有一個故事板..並且我還設置了每個視圖控制器在界面生成器中有作爲狀態欄樣式的燈光內容 –

回答

1

你試過了嗎?

在Info.plist中將「查看基於控制器的狀態欄外觀」(UIViewControllerBasedStatusBarAppearance)設置爲YES。 (YES是默認值,所以你也可以將這個值從plist中刪除。)

+0

您的救星。我將它設置爲NO並且狀態欄顯示現在開始..謝謝! –