3

I am developing an iphone application and i am using a background picture for my app. I know that before iphone 4 , the resolution of the screen was 480x320 and after 960x640. I read that i should use 2 images like : MyImage.png and MyImage@2x.png with the 2 different resolutions and the app will know which one to choose according to the phone. My question is very simple. If i just use the 960x480 , whats the difference? I am developing on an iphone 3gs and i am using this resolution and everything works perfect. So why have a small resolution for these phones?

4

3 回答 3

4

在我看来,不同之处在于:手机会将双倍分辨率的大小调整为一半,这将导致 (1) 最终图像不像从像 Illustrator 或 Photoshop 这样的图像应用程序 - 至少从我自己的经验来看,当我在非视网膜设备中导出两种分辨率时,如果我导出了正常分辨率,图像看起来不会那么好。另外(2)设备会浪费时间/性能来进行这种转换,尽管我不知道它有多大意义。(3) 最后,考虑到双倍大小的图像是较大的文件,您可能会在不需要的情况下使内存过载,您可以使用较小的文件来代替。

如果你不介意这个问题,你可以继续。自己试试。

于 2012-09-03T08:24:00.233 回答
2

如果不出意外,高分辨率图像将对内存造成更多负担。一张 320✕480 的全屏图像在内存中大约是 600K,而 640✕960 几乎是 2.5M,是内存的四倍。在旧设备上,内存比在新设备上要稀缺得多,并且您可能会在开发周期的后期遇到问题,此时有更多的资源在使用。

即使您能够在所有受支持的旧设备上测试该应用程序,并且您可以保证没有立即出现性能问题或视觉故障,该应用程序也会占用更多内存,从而迫使操作系统更频繁地杀死其他应用程序(= 整体用户更差经验)。

于 2012-09-03T08:24:14.420 回答
1

如果您使用一个版本的图像 (960x640) ,当应用程序在非视网膜上运行时会有内存开销。你不需要在非视网膜显示高分辨率,只在视网膜显示,制作两个版本的图像 .png 和 @2x.png 将告诉 ios 它应该加载哪个图像版本,这取决于当前使用的设备。

于 2012-09-03T08:26:21.503 回答