之前有个疑问,既然现在retina的屏幕已经很主流,3GS用户越来越少,而且只放@2x的图在低分辨率屏幕上仍然是可以展示的,那么是否可以在项目中只用一套@2x的图呢,也可以减轻美工部分工作量?
看了stackOverFlow上一个帖子解了我的疑惑:http://stackoverflow.com/questions/10576520/ios-apps-why-include-both-2x-and-low-res-images
主要来讲原因有:
1. 在3GS等非retina屏幕的设备上,系统发现@2x的图片没有其对应的非retina版本,于是只能用比原来尺寸大很多的@2x的图,会占用很多内存
2. 这些设备每次遇到需要画图的地方都需要将retina的图读入内存,并且进行一次复杂的缩放操作,既耗内存又耗cpu,影响性能。在iPad1上尤其明显。
3. 经由系统缩放的图的效果肯定不如自己提供的非retina图好
2014年,iPhone 6, iPhone 6 Plus发布后,比较所有iPhone机型。
屏幕尺寸再度分裂。但是我们比较iPhone 5 跟 iPhone 6的宽高比例。可以看出,iPhone 6跟iPhone 5虽然屏幕尺寸改变了,但是它们的比例是不变的。都是 9 ÷ 16 = 0.5625 的屏幕。
经新xcode6模拟器验证(分辨率为pt,像素为真实pixel):
- iPhone5分辨率320x568,像素640x1136,@2x
- iPhone6分辨率375x667,像素750x1334,@2x
- iPhone6 Plus分辨率414x736,像素1242x2208,@3x,(注意,在这个分辨率下渲染后,图像等比降低pixel分辨率至1080p(1080x1920)
AppIcon: 6种 兼容Iphone4以上,IOS5以上。
AppIcon: 9种 兼容所有。
LaunchImage: 4种 兼容Iphone4以上,IOS5以上。 R4对应Iphone5 R4.7对应iphone6 5.5对应iphone6+
LaunchImage LaunchImage: 兼容所有
Retina HD 5.5 -- 1242 * 2208 Retina HD 4.7 -- 750 * 1334
2X -- 640 * 960 Retina 4 -- 640 * 1136
1X -- 320 * 480 2X -- 640 * 960 Retina 4 -- 640 * 1136