2012-12-12 13 views
0

到目前为止,我正在使用UIImageView和UIImage数组显示一个接一个。Objective-c和大型动画图像

在这个例子中相同临客:

NSArray *myImages = [NSArray arrayWithObjects: 
        [UIImage imageNamed:@"instruction_1"], 
        [UIImage imageNamed:@"instruction_2"], 
        [UIImage imageNamed:@"instruction_3"], 
        [UIImage imageNamed:@"instruction_2"], 
        [UIImage imageNamed:@"instruction_1"] 
        ,nil]; 

UIImageView *butta = [[UIImageView alloc] initWithFrame:frame]; 
butta.animationImages = myImages; 
butta.animationDuration = 1; 
butta.animationRepeatCount = 0; 
butta.alpha = 0; 
[butta startAnimating]; 

但问题是,这种解决方案的工作,直到图像是小...但对我来说,他们大多是相同设备最大分辨率(2000宽度和1500高度景观视网膜ipad)...并且它有alpha通道(.png)...导致不佳的性能,尤其是在较慢的设备上(即使在iPad 3上)...

你知道吗?替代?我尝试了.svg图形,但它甚至更糟。

我该如何优化它?

在此先感谢您的帮助, 问候大卫

+1

将图像制作成视频,将其包含在您的应用程序包中,播放它 –

+0

您谈论了多少图像?数百个,或者只是一只手满了? –

+0

在您的具体示例中,至少instruction_1的最后一项是多余的。摆脱它。你做这件事的方式会导致instruction_1从第二次外观开始出现两次。 (instruction_1 follow instruction_1) –

回答

0

我用AVAnimator之前大获成功。我有一个类似的问题,我必须在电影中制作非常大的图像。有一点点的学习曲线,但我相信他有很多例子,我只是适应了我的使用。