使用Core Graphics的图像动画太慢了

时间:2012-01-16 19:53:32

标签: iphone ios animation core-animation core-graphics

我正在使用Core Graphics和CADisplayLink创建动画。

我使用每个CADisplayLink循环调用将图像重绘为当前图形上下文。 这是我每次调用时绘制图像的功能:

 - (void) drawImage {

//img is some uiimage
CGRect r = CGRectMake(0, 0, img.size.width, img.size.height);
CGImageRef i = [img CGImage];
CGContextDrawImage(context, r, i);



 }

问题是动画运行缓慢,我相信这是因为我每次都是从头开始创建图像位图,而不是以某种方式缓存它。有没有办法缓存位图?如果是这样的话?

提前致谢。

1 个答案:

答案 0 :(得分:0)

如果没有看到更多的代码或某些分析器输出,就无法确定为什么代码很慢。但是,您应该尝试使用UIImageView,而不是完全绘制图像。只需在每次CADisplayLink通知您时更改图片视图的框架。