1

大家好,我的应用程序中的人我想做一个动画。动画有 160 帧,我希望它持续 10 秒并循环播放。

因为它创建了一个带有框架和 UIImageView 的数组。

UIImageView *animImageView;
...
NSArray *arrayAnim = [[NSArray alloc] initWithObjects:[UIImage imageNamed:@"image0001"],...,nil];

animImageView.animationImages=arrayAnim;
animImageView.animationDuration=10;
[animImageView startAnimating];

这个结果并获得了动画,但此刻我开始动画我的应用程序中断了 7 秒。有什么办法可以避免这种延迟?

4

1 回答 1

2

你几乎可以肯定使用了太多的内存。每个图像 640 x 1136 x 4bpp = 2908160 字节的内存。对于 160 张图像,内存为 465 MB(甚至超过 3GS!)

在不知道你的动画是什么样子的情况下,我建议你尝试使用 UIViews 动态构建动画并实时动画子视图,而不是使用预渲染帧。

于 2013-09-04T10:13:57.637 回答