2010-03-04 36 views
0

我正在开发iPhone的图像框架应用程序。当我从图像选择器控制器中选择图像,并在缩放,裁剪,与框架配对后,我将保存图像。对于那 我正在图像上绘制图像上下文。其实我的图像是1200 * 1600大小,但我们纵容320 * 480的图像帧。所以在绘制图像后,图像的大小不像iphone照片大小。所以为此我调整了1200 * 1600大小的图像。在这里我得到了内存警告,当我用1200 * 1600尺寸的绘图图像检查仪器时,它需要高达130MB。此后我的应用崩溃了。我用各种不同的方式尝试。但我无法克服这个问题。所以请帮我解决这个问题。调整大小的图像将给予内存警告

预先感谢

回答

1

文档甾体抗炎药,最大图像尺寸应比1024×1024小。所以我认为你的问题来自你的高大图像尺寸。

您应该避免创建尺寸大于1024 x 1024的UIImage对象。除了这种图像消耗的大量内存之外,在OpenGL ES中将图像用作纹理时或将图像绘制到视图或图层时,您可能会遇到问题。如果您正在执行基于代码的操作,例如通过将图形绘制到位图支持的图形上下文来调整大于1024 x 1024像素的图像,则此大小限制不适用。实际上,您可能需要以这种方式调整图像大小(或将其分成几个较小的图像),以便将其绘制到您的某个视图中。

(参见UIImage Class Reference