如何在Android中停止/重置AnimationDrawable

时间:2013-11-12 00:49:27

标签: android-animation

动画可绘制不是“停止”。 我想在点击另一个按钮时重置动画可绘制。

启动动画可绘制的代码:

MainActivity:

private AnimationDrawable frameAnimation
iconConnecting.setBackgroundResource(R.drawable.frame_animation);
frameAnimation = (AnimationDrawable) iconConnecting.getBackground();
frameAnimation.start();

frame_animation.xml:

<animation-list xmlns:android="http://schemas.android.com/apk/res/android"
                android:oneshot="false">
   <item android:drawable="@drawable/connecting0" android:duration="400" />
   <item android:drawable="@drawable/connecting1" android:duration="400" />
   <item android:drawable="@drawable/connecting2" android:duration="400" />
   <item android:drawable="@drawable/connecting3" android:duration="400" />
   <item android:drawable="@drawable/connecting4" android:duration="400" />
</animation-list>

1 个答案:

答案 0 :(得分:0)

在frame_animation.xml中,将 android:oneshot 值更改为true

<animation-list xmlns:android="http://schemas.android.com/apk/res/android"
                android:oneshot="true">

Documentation of android:oneshot

  

“如果为true,则动画将只运行一次然后停止。如果为false(默认值),它将继续运行,在最后一次完成后的第一帧重新启动。”