UIImage -drawAtPoint:对于大图像来说非常慢

时间:2013-06-06 20:57:51

标签: ios uiview uiimage drawrect

所以我有一个巨大的UIImage,可能是10,000x10,000像素(我知道它们显然不应该超过1024x1024,但无论如何这不是主要问题)。在屏幕上移动它(使用-drawAtPoint不断地在不同点绘图)非常慢。

所以我将图像分成100x100像素UIImages,并决定使用drawAtPoint分别绘制它们。结果更糟。

是否有更有效的方法将UIImages绘制到这样的屏幕上?或者更有效的图像管理方法?感谢。

编辑..当我把它分成瓷砖时,我只是在绘制视图中的瓷砖。

1 个答案:

答案 0 :(得分:2)

Apple有一个非常好的示例代码,名为PhotoScroller - 它展示了如何使用CATiledLayers以及预先平铺的图像。但是,您必须事先创建数百个磁贴,并将它们包含在您的应用包中或下载每个磁贴。

github上有另一个名为PhotoScrollerNetwork的项目,它可以下载大量的jpeg图像,并在下载时为你做各种各样的平铺。它利用了另一个开源库libjpegturbo。