我正在尝试使用AnimationDrawable的帧动画来实现一些动画效果。
当我使用以下代码加载动画时:
animationHolder.setBackgroundResource(R.drawable.secondanimation);
frameAnimation = (AnimationDrawable)animationHolder.getBackground();
UI会变得无响应几秒钟(3-5秒)。我猜这是因为它必须加载大量的图片。(精确地说,是140个PNG图像,每个图像大小为400px x 300px,50KB)。
当我开始动画时,它运行得很好,至少在我的HTC Desire上。
如果我在模拟器中运行相同的代码,我会得到:“OutOfMemoryError”与“位图大小超出了VM预算”。
如何正确处理大型动画?我猜应该有某种“懒动画加载”的方式。类似的东西已经存在了吗?还是我必须推出某种自定义视图?
像“Talking Tom Cat”这样的其他流行应用程序是如何做的呢?