iPhone 3g和iphone 4分辨率最佳做法

时间:2010-12-08 00:21:55

标签: iphone graphics ios4 screen-resolution

我们的图形人员只是给了我正在构建的应用程序的切片图像,但他只给了我960x640 iPhone 4 res的分辨率。

并建议我可以在运行时将图像向下缩放3g,因此分辨率/图像大小保持不变,但它只显示为一半大小。

问题:提交到应用商店时是否允许这样做,或者是否要求提供例如:

IMAGE1@2x.PNG(460x640) - iPhone 4

IMAGE1.PNG(230x320) - iPhone 3g

适用于所有图像。

我可能只是进行批量转换,并且对所有图像都有两种分辨率,以节省最大空间。

3 个答案:

答案 0 :(得分:2)

这是允许的,但显然这些图像在旧设备上占用的RAM数量是其他设备的四倍,具有四倍的像素。虽然iPhone 4拥有512mb的RAM,但3G和原装只有128mb。虽然假设您正确处理内存警告并且所有内容仍然适用,但主要的副作用是性能问题,无论何时清除内容并稍后从磁盘重新加载(我确信您已知道,它会自动处理以供查看NIB中的控制器)。根据经验观察,3GS前设备上的闪存比后来的东西慢得多,所以即使您坚持使用大图像,尝试最小化磁盘大小也是有意义的。

答案 1 :(得分:0)

对我有用的最佳做法是制作我的视网膜图像,然后将其缩小50%。

为了使视网膜显示器使用较大的图像,@ 2x必须分开较大的图像。你的例子就是它应该被使用的方式。

答案 2 :(得分:0)

我肯定会提前批量缩放。如果没有其他原因,iPhone会选择是否显示IMAGE1.PNG或IMAGE1@2X.PNG,具体取决于屏幕的分辨率。在您的代码中,您始终只需参考IMAGE1.PNG。您不必进行任何编码更改。如果在运行时缩放它们,则必须覆盖对任何UIImage类型的事物的所有调用。

恕我直言,您可能会错过一个,否则Apple可能会发布不同的手机配置,导致您必须重新编写检查屏幕分辨率的所有代码。