UIImageView和CoreAnimation的性能

时间:2012-07-11 17:35:29

标签: xcode ipad animation uiimageview caanimation

我正在开发非常简单的游戏。一切正常。 我只对性能和内存有疑问。 我正在从左到右移动鸟。这只鸟在3个位置挥动翅膀。

关于速度,性能和内存的更好解决方案:

  1. 动画uiview改变3张完整的图片,鸟和翼在不同的位置
  2. 使用CALayer动画创建鸟背景并为单翼图像制作动画
  3. 感谢您的回复:) 亚历

    更新:那么更复杂的动画呢?

1 个答案:

答案 0 :(得分:0)

由于您只有3张图片(如问题中所述),因此您可以采用更简单的UIView动画方法。

但是,使用CoreAnimation可以提高性能。

使用3个不同的图像时,您可以使用UIImageView本身的动画属性,而不是更改图片和动画视图。

说出image01.pngimage02.pngimage03.png是你的形象。

    UIImageView *animationImgView = [[UIImageView alloc] init];
    NSArray *animationImages = [NSArray arrayWithObjects:
                                        [UIImage imageNamed:@"image01.png"],
                                        [UIImage imageNamed:@"image02.png"],
                                        [UIImage imageNamed:@"image03.png"],
                                        nil];
    [animationImgView setAnimationImages:animationImages];   // Add images to imageView for animation.
    [animationImgView setAnimationRepeatCount:0];           // Repeat forever.
    [animationImgView startAnimating];                     // ImageView starts animating.

然后设置UIImageView

的位置