2013-05-08 65 views
0

我正在寻找在iPhone上动画图像的最佳和最简单的方法。 我有大约75张图片,当用户按下按钮时,需要全屏动画。 我曾尝试:图像动画 - 内存问题

imageView.animationImages = [NSArray arrayWithObjects: 
[UIImage imageNamed:@"image1.png"], 
[UIImage imageNamed:@"image2.png"], 
[UIImage imageNamed:@"image3.png"], 
[UIImage imageNamed:@"image4.png"], 
[UIImage imageNamed:@"image5.png"], 
[UIImage imageNamed:@"image6.png"],nil];   
imageView.animationDuration = 0.50;   
[imageView setAnimationRepeatCount: 1];   
[imageView startAnimating]; ` 

有一点点延迟,当用户按下按钮,但动画运行伟大。问题是这个方法使用了太多的内存。

这不是一个选择使用更少或更小的图像的动画(我试过)。 图像显示三维运动,因此无法移动,翻转或翻转图像。

我一直在看OpenGL和Cocos2d,但这是正确的路要走吗?

我期待着您的回答。谢谢。

回答

0

它使用了大量的内存,因为您将所有图像一次放入数组中。

另一种方法是使用UIImageView并使用动画设置其图像属性,但不要使用imageNamed方法获取图像,因为存在缓存。你应该分配/初始化它们,并在完成时将它们设为零。

+0

你有一个例子说明如何做到这一点? 用户可以多按一下按钮,动画必须毫不拖延地运行。你描述的方式可能吗? – user2354628 2013-05-08 10:39:44