我有一个25帧的动画,压缩的jpeg,总共不到2mb。
<?xml version="1.0" encoding="utf-8"?>
<animation-list xmlns:android="http://schemas.android.com/apk/res/android" android:oneshot="true">
<item android:drawable="@drawable/y1" android:duration="50" />
<item android:drawable="@drawable/y2" android:duration="50" />
...
<item android:drawable="@drawable/mouse" android:duration="50" />
</animation-list>
然而,当我尝试播放时
iv.setBackgroundResource( R.anim.yawn );
AnimationDrawable anim = (AnimationDrawable)iv.getBackground();
anim.start();
它因位图大小超过VM预算而崩溃。
任何想法我该怎么办?
谢谢!
答案 0 :(得分:0)
如果只是减少“工作周期”怎么办...一旦我用OutOfMemory处理图像时出错,但Somethibg就像....帮助了我......代码在上面......
private void unbindDrawables(View view) {
if (view.getBackground() != null) {
view.getBackground().setCallback(null);
}
if (view instanceof ViewGroup) {
for (int i = 0; i < ((ViewGroup) view).getChildCount(); i++) {
unbindDrawables(((ViewGroup) view).getChildAt(i));
}
((ViewGroup) view).removeAllViews();
}
}