0

这是我的块动画代码:

[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 的全屏)为 FRAME 序列制作动画。我有 120 张图片,如果我尝试用 为它们设置动画NSArray,iPhone 似乎变慢了。您有可以与我分享或建议的建议或示例代码吗?谢谢

4

1 回答 1

2

您应该使用以下内置动画功能UIImageView

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

查看UIImageView文档以获取更多信息。

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

于 2012-08-24T03:11:10.023 回答