Search code examples
iosios8statusbaruistatusbariphone-6

Status Bar showing black text, only on iPhone 6 iOS 8 simulator


I'm trying to convert my iOS 7 app to iOS 8 in Xcode 6 GM, and when i run it on the iPhone 5s or lower simulators with iOS 8 everything is fine, but on the iPhone 6 and 6 Plus simulators, the Status Bar has black text instead of white like it is everywhere anytime else. I've set the Info.plist UIStatusBarStyle to "Transparent Black Style (alpha of 0.5)" thru Xcode, and that seems to have the desired effect everywhere else. Any ideas what is going on?

(I haven't touched any of the storyboards yet, could it be anything with that? I was hoping I could put that off for a while:)


Solution

  • This bug only occurs if your app is being scaled to fit the resolution of the newer devices.

    A quick fix (who knows whether this will even get addressed in 8.1) is to provide the proper resolution loading images in your app package.

    From https://developer.apple.com/ios/human-interface-guidelines/graphics/launch-screen/

    For iPhone 7, iPhone 6s, iPhone 6:
    
    750 x 1334 (@2x) for portrait
    1334 x 750 (@2x) for landscape
    
    For iPhone 7 Plus, iPhone 6s Plus, iPhone 6 Plus:
    
    1242 x 2208 (@3x) for portrait
    2208 x 1242 (@3x) for landscape
    

    In my app, we only support portrait, so providing the 750x1334 and 1242x2208 fixed it.

    And just to confirm in case it wasn't obvious, you DO need to be using UIStatusBarStyleLightContent for your status bar style.