How to Add iPhoneX Launch Image
Using Xcode Version 9.0 (9A235), I am trying to add a Launch Image for iPhoneX at the requested 2436px × 1125px (landscape). Currently I am using a Storyboard and it looks like this:
'launchimage' is an Image View linked to an Image Set:
And the Image Set is as follows:
The only place I get an iPhoneX sized image is in a Launch Image set:
But when I try to select a Launch Image in the Image View on the storyboard it can't be selected:
Any help on how to add the correct sized launch image for iPhoneX or is it back to Launch Images? I would prefer the correct sized image, not a stretched one.
UPDATE:
I would like to explain why I want the image to be exactly the same pixel per pixel. Following the Guidelines in https://developer.apple.com/ios/human-interface-guidelines/icons-and-images/launch-screen/ my launch image is a static version of the first page of the App. If the Launch Image is stretched then there is a noticeable switch from Launch Image to First Page. Which sort of defeats the object of the guidelines. Apple recommend using a storyboard launch, but it seems you can't follow their guidelines if you do. Typical, really.
If your used the LaunchImage.launchimage
for Launch, the solution is (in Xcdoe 9.0):
Select
Assets.xcassets
, right click on middle pane, selectApp Icons & launch Images
->New iOS Launch Image
. Then move the oldLaunchImage.launchimage
images to the new one, and add the image size with1125×2436 px
for the iPhoneX.Also, you can add the following json object to
Contents.json
file which onLaunchImage.launchimage
folder in your old project。Once Xcode refreshes, just drop in a 1125×2436px image. If you need landscape, you can add another with the orientation.
{
"extent" : "full-screen",
"idiom" : "iphone",
"subtype" : "2436h",
"minimum-system-version" : "11.0",
"orientation" : "portrait",
"scale" : "3x"
}
To the 2018 lazy devs like me who has an existing project that has an old version of launchimage (with no iPhoneX variant), here's my solution to support iPhone X - this is a shortcut one for you.
- Open Assets.xcassets in your Xcode.
- Right click in your LanchImage then select Show In Finder.
- Open the Contents.json
- Paste the follow codes inside your "images" array.
{ "extent" : "full-screen", "idiom" : "iphone", "subtype" : "2436h", "filename" : "ipxportrait.png", "minimum-system-version" : "11.0", "orientation" : "portrait", "scale" : "3x" }, { "extent" : "full-screen", "idiom" : "iphone", "subtype" : "2436h", "filename" : "ipxlandscape.png", "minimum-system-version" : "11.0", "orientation" : "landscape", "scale" : "3x" },
Replace of course the filename with appropriate images. Voila!