2

Most of my apps scale up when run on an iPhone 6, but for some reason one of my apps looks like this:

enter image description here

What would cause it to not just scale up and fill the screen?

EDIT: Here are some repro steps:

Create a new project (Single View). Turn off size classes and just use iPhone.

Make the background orange.

Add a yellow UIView subview at (20,20,280,200).

In Xcode you get this:

enter image description here

Now simulate on iPhone 6. You get this:

enter image description here

Why doesn't it just scale up and look normal?

soleil
  • 12,133
  • 33
  • 112
  • 183
  • Perhaps you added the iPhone 6 launch images but your app is written properly to automatically fill the larger size. – rmaddy Oct 02 '14 at 17:47
  • I have not added any iPhone 6 launch images. In fact, there's no @3x option in my LaunchImage asset catalog. – soleil Oct 02 '14 at 17:50
  • @3x images are for the iPhone 6+, not the iPhone 6. If you didn't add the iPhone 6 launch images (or the new Launch Screen file), then your app should think it's on an iPhone 4 or 5 and be scaled to fill the screen. – rmaddy Oct 02 '14 at 17:52
  • Yes, that is the question. Why would it not be scaling to fill the screen? – soleil Oct 02 '14 at 17:56
  • 1
    You haven't provided any useful details yet. There is no way for anyone to know why you are seeing what you are seeing. Are you sure the app isn't scaled? Does the status bar unscale if you press the home button? – rmaddy Oct 02 '14 at 17:59
  • See my edit. Does that make sense? – soleil Oct 02 '14 at 18:33

4 Answers4

11

Not sure why this is getting downvoted. It's a legitimate question. And here's the legitimate answer:

Remove the "Launch Screen File" in Projects > General. Xcode 5 did not have this so older apps scale up automatically. Apps created with Xcode 6 get a default Launch Screen file created.

Removing it will make your app scale up on iPhone 6.

soleil
  • 12,133
  • 33
  • 112
  • 183
  • See my 2nd comment to your question. I mentioned the bit about having a launch screen file. BTW - I didn't down vote. But it has probably been down voted because there was little info to help answer the question. – rmaddy Oct 02 '14 at 19:10
1

I have got the same problem and I managed to solve it by adding constraints to my ViewController in the storyboard.

  1. Make sure that you clicked the ViewController of your scene. They yellow button in the this screenshot. enter image description here
  2. Click Editor-> Resolve Auto Layout issues -> Add Missing Constraints Now you will find that the background image is scaled up to fill iPhone 6 or iPhone 6 plus.

Note that this solution works for me even if I did not provide any launch screen file.

Wael Showair
  • 3,092
  • 2
  • 22
  • 29
0

I had the same issue. Searching for an answer, most of them mention the launch image. To me, what did the trick, was that I first enabled launch image for iOS8.0 and later in Xcode, which requires the native resolution sizes for 4.7" and 5.5". Adding these sizes didn't help, but when I re-disabled them, it started working!

james0n
  • 586
  • 3
  • 15
0

If you do have any launch image, you will need launch images for all appropriate sizes. I was doing a minor update to an app, and it was not showing correctly on the iPhone 6 simulator. I created four launch images (.png files). Since the app should still run on iOS 7, I apparently could not use an asset catalog. I gave the images the correct names, and all is good.

Image sizes and names may be found here: Sizes and Naming of Launch Image for iPhone app in iOS8

Community
  • 1
  • 1