400dp(幅)と300dp(高さ)に設定した画像ビューがあります。この画像ビューは、URL から画像を読み込んでいるリスト ビューで使用されます。画像の読み込み中に、次のように設定されたアニメーションのような進行状況バーを表示します。
imageView.setBackgroundResource(R.drawable.progress);
final AnimationDrawable startAnimation = (AnimationDrawable) imageView
.getBackground();
startAnimation.start();
画像の読み込みが完了したら、このアニメーションを削除し、読み込まれた画像を次のように設定します。
imageView.setBackgroundResource(0);
imageView.setImageBitmap(bitmap);
しかし、問題は、アニメーションも指定された幅と高さ、つまりそれぞれ 400dp と 300dp を取っていることです。どうすれば描画可能なアニメーションのサイズを単独で縮小できますか?
私のアニメーションファイル:progress.xml
<?xml version="1.0" encoding="utf-8"?>
<animation-list xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/anim_black"
android:oneshot="false" >
<item
android:drawable="@drawable/frame_1"
android:duration="100"/>
<item
android:drawable="@drawable/frame_2"
android:duration="100"/>
<item
android:drawable="@drawable/frame_3"
android:duration="100"/>
<item
android:drawable="@drawable/frame_4"
android:duration="100"/>
<item
android:drawable="@drawable/frame_5"
android:duration="100"/>
<item
android:drawable="@drawable/frame_6"
android:duration="100"/>
<item
android:drawable="@drawable/frame_7"
android:duration="100"/>
<item
android:drawable="@drawable/frame_8"
android:duration="100"/>
<item
android:drawable="@drawable/frame_9"
android:duration="100"/>
<item
android:drawable="@drawable/frame_10"
android:duration="100"/>
<item
android:drawable="@drawable/frame_11"
android:duration="100"/>
<item
android:drawable="@drawable/frame_12"
android:duration="100"/>
</animation-list>
フレーム1、フレーム2 ....フレーム12は、gif画像を分割して得たpngファイルです。