2012-07-11 46 views
1

的我的工作很简单的游戏。一切正常。 我只关心性能和内存。 我从左到右移动小鸟。这只鸟在3个位置挥舞着翅膀。性能的UIImageView和CoreAnimation

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

  1. 动画的UIView改变3张鸟翼完整的图片中目前存在的位置
  2. 创建鸟的背景和使用的CALayer动画
动画单翼图像

感谢您的回复:) 亚历克斯

更新:那么更多co复杂的动画?

回答

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

位置