iOS应用程序 - 为什么包含@ 2x和低分辨率图像?

时间:2012-05-14 01:12:04

标签: ios image retina-display

这一直困扰着我。我不明白为什么要包含低分辨率图像。例如,如果3GS无法找到低分辨率图像,它只会使用@ 2x版本并以其原始分辨率显示它。那么为什么要通过包含所有半分辨率图像来添加应用程序的文件大小?

5 个答案:

答案 0 :(得分:19)

哈利做对了。系统不会自动将@ 2x图像下采样到非视网膜大小,它不应该。 3G没有足够的内存来加载视网膜图像。它可能会阻塞您的应用程序,并导致它退出并出现内存不足错误。

iPad 1的问题变得更糟。相对于iPad 1的屏幕尺寸,iPad 1的内存非常低,如果你试图让它加载视网膜尺寸的图像,它会很快窒息死亡。

要缩放图像,系统必须以全尺寸加载图像,并在每次绘制时执行复杂的缩放操作。这是所有可能世界中最糟糕的 - 较慢,4倍的内存,而且图像看起来不太好。

答案 1 :(得分:4)

在大多数情况下,当您以低分辨率分辨率创建时,您可以使图标看起来更好 ,而不是让系统缩放它。如果您不太关心缩放时图标的外观,那么仅使用@ 2x版本可能就好了。

答案 2 :(得分:1)

其他海报提到了一些优点,但这里还有一个后人:正如http://developer.apple.com/library/ios/#DOCUMENTATION/UserExperience/Conceptual/MobileHIG/IconsImages/IconsImages.html#//apple_ref/doc/uid/TP40006556-CH14-SW1中多次提到的,2x图像可能更详细。换句话说,低分辨率图像不仅仅是2x图像的缩小版本; 2x图像可能包含较小图像中不存在的细节。

答案 3 :(得分:0)

@ 2x文件名适用于启用Retina Display的设备。

如果您打算在iPhone 3GS上使用它们,请确保正确测试它们看起来像苹果希望您使用的低分辨率图像一样可接受。

答案 4 :(得分:-1)

原因在于,如果没有2x可用的图像放大,它们会变得像素化和模糊,所以你可能会认为原始图像的两倍大可以解决问题。

但不,因为视网膜设备仍然可以扩大规模(根据我的经验),非视网膜设备会错误地显示图像。

这与Apple在其应用程序商店中为应用程序所需的质量标准有很大关系