iOS only supports the size notations for launch images, for example this page describes the usage for 3.5", 4", and iPads in the format [email protected]
, etc.
What you're actually only able to support is @2x and @3x (see here) which explains why on each of the devices you're seeing it pick up the @2x and @3x pngs only.
Lastly, the [email protected]*h
isn't a valid size denotation either; those files won't be read by the system automatically when you reference an image named MYimage.png
; at most you could do [email protected]
and [email protected]
.
Answering your question below:
iPhone 6 and iPhone 5 both render at the same pixel density. UI elements should be positioned correctly in the UI at the same point size on both devices.
For example:
iPhone 5 iPhone 6
| | | |
| | | |
| | | |
|[bttn]| | |
|______| | [bttn] |
|________|
If you're displaying an photo in a UIImageView though, you can just create the largest size and let it either scale down to the iPhone 5 (using UIViewContentModeScaleAspectFill
) or leave it as-is (using UIViewContentModeCenter
).
In the end, you really don't want to have to manage specific dimensions for every single device out there - already if you're including 2 high-res assets for each element, that's a lot of storage space. Adding one for every device is unnecessary, and Apple never intended for that to be the case.
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…