I have some UI bugs in launch image on iPad mini device. My application is for iPhone only, but anyway when you start it on iPad it has launch image too.
I have
Default-568h#2x.png for 4-inch retina display
Default#2x.png for 3.5-inch retina display
Default.png for non-retina display
What image will iPad mini use for launch icon.
You Have to add two images for iPhone with below name it will automatically consider this as launch image.
Image Name : Default#2x~iphone.png Size: 640*960
Image Name : Default~iphone.png Size :320* 480
Add images with above name and above size, #2x is for iPad/iPad mini
You should have a 1024 x 768 (Portrait) and 768 x 1024 (Landscaoe) png images for iPad mini launch screens.
Related
I am sure this info is somewhere but I can't find it, and the Apple Developer hotline seems to have no idea what I'm talking about. In the assets library for launch screen in Xcode, there are slots labeled:
iPhone Portrait ---> Retina HD 5.5 & Retina HD 4.7
iOS8
iPhone Portrait ---> 2x & Retina 4
iOS 7, 8
iPhone Portrait ---> 1x, 2x & Retina 4
iOS 5, 6
I had launch screens prepared and I have the sizes for these individual files, but I don't see how their sizes correspond to these Apple labels within Xcode. Moreover, the Apple docs here (https://developer.apple.com/library/ios/documentation/LanguagesUtilities/Conceptual/iTunesConnect_Guide/Appendices/Properties.html#//apple_ref/doc/uid/TP40011225-CH26-SW1 which is what Apple Developer referred me to) just refer to iphone 6 and 6s sizes, which doesn't correspond to the Xcode label organization.
This seems like it should be a 1 minute query. What am I missing and where is this super basic information?
If you select the image "slot" in the asset catalog and show the Attributes inspector (on the right-hand side), it will show (among other things) "Expected Size" for each image. Doing that, it looks like:
iPhone Portrait iOS8 Retina HD 5.5: 1242 x 2208
iPhone Portrait iOS8 Retina HD 4.7: 750 x 1334
In the Attributes inspector, you can also choose which "slots" you want included via a series of checkboxes.
Documentation-wise, see the Icon and Image Sizes section of the iOS Human Interface Guidelines.
Paraphrasing from there:
iPhone 6 Plus: Use a Launch File
iPhone 6: Use a Launch File
iPhone 5: 640 x 1136
iPhone 4s: 640 x 960
iPad (#2x): 1536 x 2048 (portrait), 2048 x 1536 (landscape)
iPad (#1x): 768 x 1024 (portrait), 1024 x 768 (landscape)
Also see the Launch Images section, which says:
Although it’s best to use a launch file for iPhone 6 and iPhone 6 Plus, you can
instead supply static launch images if necessary. If you need to create static
launch images for these devices, use the following sizes:
For iPhone 6:
750 x 1334 (#2x) for portrait
1334 x 750 (#2x) for landscape
For iPhone 6 Plus:
1242 x 2208 (#3x) for portrait
2208 x 1242 (#3x) for landscape
It's worth noting that if you're only supporting iOS 8, you can just use a launch XIB or Storyboard and you don't need to worry about particular images sizes. The Launch Images section has information on that.
My most recent app update (which is iOS 8 only) is using XIB files (one for iPhone, one for iPad) and it works great.
Retina HD 5.5 - 1242x2208
Retina HD 4.7 - 750x1334
Retina HD 5.5 landscape - 2208x1242
2x - 640x960
Retina 4 - 640x1136
1x - 320x480
default 320x568
default#x2 640x1136
I have a problem with my application ios. It is a universal application of cocos2d 6.0. It works on ipad, iphone 3GS, 4, 4S. Iphone 5 on I can start the application but cocos2d does not use the entire screen. Like iPhone 4. Do you have any idea??
Thank's
Have you added to your project the Default-568h#2x.png launch image? This will make your app use the full iPhone 5 screen.
If you do not include that launch image, then your app will work in boxed mode (i.e., centered on screen with black bands above and below to fill the entire area).
Note : this is due to the devices different screen resolutions :
iPhone 4 : 960x640 px.
iPhone 5 : 1136x640 px.
This happens due to screen size differences between iphone5 and iphone 3G, 4, 4s.
iPhone 4 :960 x 640 px
iPhone 5 1136 x 640 px
You should use Default-568h#2x.png image name for your launch image. On starting iphone 5 will load this image which will cover whole screen, While for other images in your game(If you have different images for iPhone5) use following code in your AppDelegate.m
[CCFileUtils setiPhoneFourInchDisplaySuffix:#"your suffix"];
And place images in project according to your suffix.
I have created a new Cocos2d project and I deleted the 'Hello World' label. I have added this image (320x480 px) and tested on iPhone 4, here is the result. The image's dimensions have been reduced to 1/4th of their original size, not sure what's going on. I never had this problem before with the previous version.
Source Image
Screen Shot from iPhone 4
You should enable retina display if it's not already enabled:
[director enableRetinaDisplay:YES];
And provide the retina version of the background image using the "-hd" suffix.
backgroundImage.png (320 x 480 px)
backgroundImage-hd.png (640 x 960 px)
By the way you can set your own suffix:
#define CC_RETINA_DISPLAY_FILENAME_SUFFIX #"-hd"
The reason is that iPhone 4 and 4S have retina displays - a display with a 4 times higher resolution as the previous models. Cocos2D, as opposed to iOS, doesn't use logical but physical screen sizes - you need to load another image with a 4 times higher resolution on iPhone 4 and 4S.
Apple presented new iPad that support retina graphics.
I saw this link retina graphic in apple apps. As you can see apple just use "#2x" suffix for retina iPad display.
I have an universal app. So how to support retina in new iPad and iPhone? Will iPad retina use suffix "#2x" similar to iPad?
I just created a test app and tested.
So for devices without retina:
ImageName.png - For iPhone/iPod
ImageName~ipad.png -- For iPad
For devices with retina display:
ImageName#2x.png - For iPhone/iPod
ImageName#2x~ipad.png -- For iPad
And you can still use #2x if your iPhone high resolution image and iPad high resolution image have the same size.
To load the image just use [UIImage imageNamed:#"ImageName.png"];
I just tested it on iOS simulator for iOS 5.1, 5.0 and 4.3.
By the way why you should use #2x and nothing more.
The main thing because you shouldn't use the same graphics on iPhone and iPad, because iPhone and iPad has different size. And if you will use the same size the graphics will already done for you iPad retina display (if you previously use iPhone retina display). If you will images with different size, so you will use different image names for iPhone and iPad. So in this side you need just add #2x suffix.
That's why you should use just #2x suffix. - these are my thoughts.
I found that the iPad mini/non retina iPad hardware, not simulator, would fall back on ImageName.png, not ImageName~ipad.png as you would expect from rowwingman's answer.
Looking at the docs, referenced in another StackOverflow question by Nate, it seems as though appending the device to iphone images is the correct way to do it.
MyImage.png - Default version of an image resource.
MyImage#2x.png - High-resolution version of an image resource for devices with Retina displays.
MyImage~iphone.png - Version of an image for iPhone and iPod touch.
MyImage#2x~iphone.png - High-resolution version of an image for iPhone and iPod touch devices with Retina displays.
Image, Sound, and Video Resources
Graphics development for iPhone4 and old iPhones was changed in several ways:
The concept of point was introduced
to replace pixel.
Methods of UIImage will load high
resolution resource files with #2x
in the file name.
Scale factor was added to UIScreen,
UIView, UIImage, and CALayer
classes.
So if we handle CGImage carefully, it's not hard to support the high resolution Retina display of iPhone4.
I have several questions about non-native iPad app in iPad 2x mode:
Could all the changes from old
iPhone to iPhone4 (#2x resources
auto loading, point concept, scale
factor) be applied to iPad 2x mode.
The scale of app on iPad can be
changed. How can I handle it?
With The new iPad sporting Retina Display you will need another set of images for some items such launcher icon, launch images (splash screen).
For example:
The launcher icon for Retina Display on iPhone/iPod Touch is 114 x 114 but on The new iPad the same icon for Retina Display is 144 x 144.
Other example:
On an Universal App, for the launch images (splash screen) you'll need an image set for phones/music players:
Default.png (For old devices)
Default#2x.png (For phones/music player with retina display)
Another image set for Tablets:
Default-Portrait~ipad.png (For original iPad and iPad 2)
Default-Portrait#2x~ipad.png (For the new iPad with retina display)
Default-Landscape~ipad.png
Default-Landscape#2x~ipad.png
The "#2x~ipad" will work on the new iPad in the same way "#2x" worked for the phones and ipods, but will be relative to the old iPad image set.
Unfortunately, all of those content scale functions were added in 4.0, so I don't think there's any way to use the iOS4 stuff that you're asking for.
The iPad 2x mode is just a way to run iPhone-only apps on the iPad's larger screen. If you want to take advantage of iPad's larger screen, all you have to do is create a universal binary (i.e. one that contains views for both iPhone and iPad).
There is no way to get the iPad 2x mode to display your iPhone retina level content automatically—Apple do not support this... presumably as they want people to put effort into developing iPad-specific interfaces for their apps.