letter Q
letter Q

Reputation: 15385

Make a iphone 3 app fit the iphone 5 4-inch screen

I have a Xcode project for a iphone app that has been designed to be universal and has a deployment target of 4.3. The project uses a .xib file for constructing the user interface and I am only familiar with storyboards. My goal is to make the app that only works on the 3.5 screen fit the iphone 5 4-inch screen. Do you guys have any tutorials online or tips on how I can do this? Thanks in advance!

Upvotes: 0

Views: 2311

Answers (2)

Rob
Rob

Reputation: 437552

The process is pretty simple:

  1. Make sure you have a [email protected] default image. See App Launch (Default) Images in the iOS App Programming Guide for information about these default images, sizes, etc. But by adding this default image, that informs iOS that your app supports the 4" screen.

  2. When designing your NIBs, you can toggle the simulated metrics between 4" and 3.5" to see how the view is rendered for both:

    simulated metrics

  3. You can then adjust your autosizing masks for your various controls so they resize correctly. This is an example where the margins are all fixed and it should grow as you go to 4" screen:

    enter image description here

Upvotes: 5

Ivan Vučica
Ivan Vučica

Reputation: 9669

"All" you have to do is properly set the struts-and-springs "autoresizing masks" in Interface Builder. The same as you'd do for Storyboards.

autoresizing masks screenshot

A friendly tip while at it: don't do storyboards except for the simplest of apps, and don't use auto layout before you're familiar with struts-and-springs and are absolutely sure you can't use struts-and-springs to do your work.

Turn off auto layout in new .xibs here:

turning off auto layout screenshot

Of course, if you have device-specific artwork (such as a background that's exactly 960x640), you'll have to do more work than that, but you're prepared for that piece of the puzzle, right?

Next, add a [email protected] file to your project. Make it 1136x640, or if you're not covering the status bar area, make it 1096x640.

Upvotes: 1

Related Questions