ループ内のアニメーションにAndroidDrawableを使用しようとしています (つまり、画像を連続的に再生します)。しかし、私を悩ませている問題は、アニメーションのデフォルトの開始/停止画像を設定するエレガントな方法が見つからないことです。
例: 'A'、'B'、'C'、'D'、'E' の 5 つの画像があるとします。
<animation-list android:id="@+id/selected" android:oneshot="false">
<item android:drawable="@drawable/A" android:duration="200" />
<item android:drawable="@drawable/B" android:duration="200" />
<item android:drawable="@drawable/C" android:duration="200" />
<item android:drawable="@drawable/D" android:duration="200" />
<item android:drawable="@drawable/E" android:duration="200" />
</animation-list>
アニメーションを開始すると、明らかに画像「A」で始まり、アニメーションが停止するたびに(つまり、メソッドStop()
が実行されるたびに)対応する画像で終了します
したがって、私の質問は、「デフォルトの開始/終了フレームを設定するにはどうすればよいですか?」です。
今のところ、私は次のソリューションを使用していますが、機能しますが、エレガントすぎません。より良い解決策があると確信しています:)
私の解決策:
- イメージ 'C' でアニメーションを開始するには、項目をアニメーション リストの一番上に移動します。
- 画像「C」でアニメーションを終了するには、メソッド
Stop()
method を呼び出します (これにより、ランダムな画像でアニメーションが停止します)。次に、アニメーションを開始するメソッドを呼び出すStart()
と、最初の画像「C」が表示されます。Stop()
その直後にメソッドを呼び出して、アニメーションが画像 'C' で停止するようにします。