我有一个存储在res / anim / draw_circle_violet.xml中的动画列表:
<?xml version="1.0" encoding="utf-8"?>
<animation-list android:oneshot="true"
xmlns:android="http://schemas.android.com/apk/res/android">
<item android:duration="10" android:drawable="@drawable/plainimg"/>
<item android:duration="10" android:drawable="@drawable/circlev1"/>
<item android:duration="10" android:drawable="@drawable/circlev2"/>
<item android:duration="10" android:drawable="@drawable/circlev3"/>
<item android:duration="10" android:drawable="@drawable/circlev4"/>
<item android:duration="10" android:drawable="@drawable/circlev5"/>
<item android:duration="10" android:drawable="@drawable/circlev6"/>
<item android:duration="10" android:drawable="@drawable/circlev7"/>
<item android:duration="10" android:drawable="@drawable/circlev8"/>
</animation-list>
此动画适用于ImageView:
mImageView.setBackgroundResource(R.anim.draw_circle_violet);
AnimationDrawable frameAnimation = (AnimationDrawable) mImageView
.getBackground();
frameAnimation.start();
我单击按钮清除应用于此ImageView的动画:
mImageView.clearAnimation();
但无法删除动画。另一种方式,我试试这个:
mImageView.setAnimation(null);
但不成功。
Plz帮助。
更新:我试过了
frameAnimation.stop();
但动画仍然应用于ImageView。任何理想? 这是我的source code
答案 0 :(得分:0)
试试这个:
frameAnimation.stop();
希望这会有所帮助:)
答案 1 :(得分:0)
这是一种肮脏的方式,但有效:
setBackgroundDrawable(new ColorDrawable(Color.TRANSPARENT));
如果这不能解决您的问题,请告诉我。