2012-08-24 50 views
0

这是我的块动画代码:UIView的帧序列动画

[UIView animateWithDuration:.5f delay:15.0f options:UIViewAnimationTransitionNone animations:^{ 
     animationContainer.image = [UIImage imageNamed:@"Hear 1_00.png"]; 
    }completion:^(BOOL finished){ 
     if(! finished) return; 
     [UIView animateWithDuration:.5f delay:15.0f options:UIViewAnimationTransitionNone animations:^{ 
      animationContainer.image = [UIImage imageNamed:@"Hear 1_01.png"]; 
     }completion:^(BOOL finished){ 
      if(! finished) return; 
     }]; 

    }]; 

我想用动画分辨率320x480(iPhone的全屏幕)帧序列。我有120张照片,如果我尝试使用NSArray来设置动画效果,iPhone似乎变慢了。你有建议或示例代码,你可以与我分享或建议吗?由于

回答

2

您应该使用内置的UIImageView动画功能:

animationContainer.animationImages = imagesArray; 
animationContainer.animationDuration = 0.5f; 
[animationContainer startAnimating]; 

UIImageView文档了解更多信息。

如果您想要图像外观的流畅动画,最好使用NSTimer而不是延迟参数。只需每15秒启动一次定时器,并以您想要的任何动画呈现下一张图像。确保您的图像最小以显示在屏幕上。因为如果它们很大,可能需要很长时间来调整和绘制它。如果无法更改原始图像,请在开始动画序列之前准备调整大小的图像数组。