我有一个全屏显示图像的应用程序。一些图像是1952x3680像素,这些图像提高了内存警告级别= 1和级别= 2.
我应该如何处理这些图像?
答案 0 :(得分:4)
大幅缩放图像。绝对没有理由在iPhone应用程序中需要以该分辨率的图像。
答案 1 :(得分:3)
不要使用它们。让您的服务器提供图像的缩略图版本(可能使用带有GET参数thumb.php
的{{1}} / jsp
/ asp
/ ...
文件),或者在iPhone上缩小图像并丢弃原始数据。前一种方法非常受欢迎,因为它节省了客户端的带宽和大内存分配。
您应该使用的最大图像是480x320(iPhone 3GS及更早版本)和960x640(iPhone 4)。
编辑:我没想到的另一种情况是你是否将这些图片与应用捆绑在一起。拜托,请不要这样做。如果您的图片很大,请在Apple的x=<width>&y=<height>
或任何图片编辑器中将其缩小到所标注的尺寸,并且理想情况下有两个副本,Preview
和image.png
会根据{image@2x.png
和scale
显示设备屏幕的{1}}。
答案 2 :(得分:3)
屏幕本身仅为320x460(不考虑顶部的时钟条),以及640x960用于视网膜显示。没有理由让这些图像开始变大。缩小它们。它既可以防止内存警告,也可以阻止不必要的图像大小。
答案 3 :(得分:0)
如前所述,如果您只想在不全屏缩放的情况下显示图像,请将其缩小。 如果您需要缩放并详细显示,请谷歌下载CATiledLayer。周围有很好的例子。