iOS 9 Xcode 7 - Application appears with black bars on top and bottom

IosIos9Xcode7

Ios Problem Overview


Installed the app on iPhone 6 iOS9 and here is what happened. Notice black bars on top and bottom. It works just fine on iOS8. How I can fix it?

I've tried building with Xcode 6.4 & 7. Same result.

(iPhone 5 used to run iPhone 4 apps like this)

enter image description here

Ios Solutions


Solution 1 - Ios

Did you migrate your app from an earlier version of Xcode? If so then Xcode is now making an assumption about your screen size and you need a way of indicating the actual screen size at run time.

There are two ways:

a) If you use a launch screen.

You are missing a LaunchScreen.storyboard file. Create a Launch Screen object from the New File... dialog

launch screen creation

b) If you don't use a launch screen.

Go to your Target's settings and choose General, then App Icons and Launch Images. Now set "Launch Screen File" to your "main.storyboard" (or another storyboard if appropriate)

Solution 2 - Ios

My App does not use a launch image. Setting the "Launch Screen File" to my "main.storyboard" file fixed the issue for me.

This setting can be found under "Target->General->App Icons and Launch Images"

Use the following link for more information: http://oleb.net/blog/2014/08/replacing-launch-images-with-storyboards/

Solution 3 - Ios

For me the problem is i'm migrating my app from earlier version of Xcode and the project is missing LaunchScreen.storyboard file. I have just created LaunchScreen.storyboard and added it to launch Screen File. This did the trick. Application with black bars on top and bottom solution

Solution 4 - Ios

I'm using xcode 7.2 . At first, I created a LaunchScreen.storyboard file, as Potassium Permanganate suggested, and it worked! However, I didn't want a launch screen, so I tried setting Main.storyboard as Launch Screen File and it did the trick!

xcode 7.2

Solution 5 - Ios

When you migrate your app from earlier version of xCode to xCode 6 or xCode 7, you will face this issue.

For iOS 7 and earlier, developers need to provide separate launch images for all screen sizes, resolutions and orientations their app supported.

In Xcode 6 or later, there is another option. You can specify a storyboard whose initial view controller will then be used as the app’s launch screen. Use below steps:

  • Create a blank storyboard file named LaunchScreen.storyboard.

  • Go to your target settings and, on the "General" tab, select the storyboard as your Launch Screen File in "App Icons and Launch Images" section. Xcode will add a corresponding UILaunchStoryboardName key to your app’s Info.plist. When this key is present, Xcode will prioritize it over any launch images you might have set.

  • Add some subviews to newly created storyboard's view and position them with constraints. When you launch the app on a device, the OS should use the scene as the launch screen.

Delete the older app from simulator and clean the project.

Cheers :-)

Solution 6 - Ios

I have same issue in my app . In my app i have multiple targets added to project . If i use launch storyboard solution then i can see full screen but in my case my Lunch image looks blurred and stretched on iPhone 4 . To come out from this issue I have used LaunchImage asset solutions . After this still I am facing same issue .I have tried all above solutions, At end I found my png images don't include ALPHA resolutions . After adding new images ,i can see full screen images .

Solution 7 - Ios

This one is if you do not use storyboard at all.

It occurs when you remove LaunchScreen from Launch Screen File in App icons and Launch Images. enter image description here

Instead of removing it from here go to info.plist and find Launch screen interface file base name and remove LaunchScreen, i.e. leave it blank. enter image description here

It wont show in info.plist if you have removed LaunchScreen already from Launch Screen File. Then you can give any name in Launch Screen File and it will appear and you can remove the name.

Solution 8 - Ios

Go to the asset catalog and create a new iOS launch Image. then in Target>General>App Icons and Launch Images>Launch Image Source you will see automatically the new Launch Image created in the assets catalog.

Solution 9 - Ios

In my case, I have several targets in the project and each one has it's own launch screen images. The weird thing one of the targets looks fine but others have those black bars. The thing was in the name of Launch folder inside assets. Change name to LaunchImage solves the problem.

Solution 10 - Ios

Swift 4.2

select LaunchScreen.storyboard if its empty

enter image description here

Solution 11 - Ios

iOS changed the way the system detects the resolution of the iPhone. You used to have to supply a number of png images named things like "[email protected]", "[email protected]". Now you don't have to do that anymore. You need to delete those "[email protected]" style files and move on to using a proper LAUNCH SCREEN object in your project.

To add a launch screen just go to the New File... dialog (File / New / File, or press Cmd + N)

launch screen creation

Double click that new Launch Screen file to edit it. Be sure it is ticked "use as launch screen" in its properties.

Finally be sure to select your LaunchScreen.storyboard file under project properties / Targets / "App Icons and Launch Images"

select your launch screen

Solution 12 - Ios

In my case I have one asset with launch images however it was displaying the top and bottom dark bar as well.

I've tried the launch storyboard solution and yes it works but I didn't want to add a new file so, this is what I did to fix the issue:

  1. Copied my launch images to another folder
  2. Removed the existing LaunchImage asset
  3. Added a new LaunchImage asset
  4. Added the images to the new LaunchImage

That's it!

Solution 13 - Ios

Go to target settings in xcode in that section go to App icons and launch images section in that section select launch screen file you will find a drop down of values select CDVLaunchScreeen value against launch screen file value

Solution 14 - Ios

I had a similar issue on an iPod. To fix this, I replaced

<key>UILaunchStoryboardName~ipad</key>
<string>LaunchScreenIpad</string>
<key>UILaunchStoryboardName~iphone</key>
<string>LaunchScreenIphone</string>

with

<key>UILaunchStoryboardName~ipad</key>
<string>LaunchScreenIpad</string>
<key>UILaunchStoryboardName~iphone</key>
<string>LaunchScreenIphone</string>
<key>UILaunchStoryboardName~ipod</key>
<string>LaunchScreenIphone</string>

in Info.plist.

Solution 15 - Ios

I had an old app (iOS 7.4 - 8.2) and after upgrading it got the same issue (getting black empty bar at the top), I managed to solve it by: > Main.storyboard > Choose your Scene & Controller > on left menu, go to Attribute Inspector > find "Presentation" and instead of "Automatic" set it to "Full Screen"

enter image description here

It did the trick for me.

Solution 16 - Ios

My app is written in python kivy. This is what I did. It worked.

  1. The reason is that I don't have AppIcon and LaunchImage defined.
    There is free website that can provides you a set of icons and
    launchImages for various devices.
  2. Once you have the full set, usually 2 folders - AppIcon and LaunchImage folder. Open your Xcode project, General > AppIcon and Launch images.
  3. In the AppIcon Source, click the arrow on the right. It will go to another page, in which you can drag and drop the two folders in (yes, drag the folders).
  4. Go back to the previous General tab, in the AppIcon Source, you can select your folder, usually called AppIcon-1. And tick 'include all icon asset'
  5. Leave 'Launch Screen File' blank. This is very different from previous Xcode version.
  6. Under the deployment info, status bar style, you can tick require full screen.

After those steps you should be good to load again.

Please note these steps are for a non storyboard app. In my case, my app is written in kivy.

Solution 17 - Ios

Don't Do anything that are described in earlier answers...

> To show view Controller follow the following single step > > Step 1 : Add the splash Screen for iPhone and iPad.

After this this error will not come again.

Attributions

All content for this solution is sourced from the original question on Stackoverflow.

The content on this page is licensed under the Attribution-ShareAlike 4.0 International (CC BY-SA 4.0) license.

Content TypeOriginal AuthorOriginal Content on Stackoverflow
QuestionMojtabaView Question on Stackoverflow
Solution 1 - IosGruntcakesView Answer on Stackoverflow
Solution 2 - Iosdreamer.pspView Answer on Stackoverflow
Solution 3 - IossmappsView Answer on Stackoverflow
Solution 4 - IosMax Hiroyuki UedaView Answer on Stackoverflow
Solution 5 - IosHimanshu MahajanView Answer on Stackoverflow
Solution 6 - IosVDPATELView Answer on Stackoverflow
Solution 7 - IosAlok SubediView Answer on Stackoverflow
Solution 8 - IosMohcine BelarremView Answer on Stackoverflow
Solution 9 - Iosd.rozumeenkoView Answer on Stackoverflow
Solution 10 - IosShakeel AhmedView Answer on Stackoverflow
Solution 11 - IosboboboboView Answer on Stackoverflow
Solution 12 - IosWilsView Answer on Stackoverflow
Solution 13 - IosShankar PrasadView Answer on Stackoverflow
Solution 14 - IosRoman PodymovView Answer on Stackoverflow
Solution 15 - IosSeyed Hani MohajeraniView Answer on Stackoverflow
Solution 16 - IosJesscralettView Answer on Stackoverflow
Solution 17 - IosShubham JAinView Answer on Stackoverflow