私がやろうとしているのは、ImageView が左から右に表示されるアニメーションを作成することです (クリッピング アニメーション?)。画像は拡大縮小しないでください。
scaleType を変更してから、ScaleAnimation をその ImageView に直接適用してみました。
レイアウト:
<ImageView
android:id="@+id/graphImage"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_alignParentTop="true"
android:scaleType="centerCrop"
android:background="@android:color/transparent"
android:contentDescription="@string/stroom_grafiek"
/>
ジャワ:
scale = new ScaleAnimation((float)0,
(float)1, (float)1, (float)1,
Animation.RELATIVE_TO_SELF, (float)0,
Animation.RELATIVE_TO_SELF, (float)1);
scale.setDuration(1000);
graphImage.startAnimation(scale);
また、ImageView を RelativeLayout 内に配置してから、アニメーションを RelativeLayout に適用しようとしました。
レイアウト:
<RelativeLayout
android:id="@+id/graphImageInnerWrap"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:background="@android:color/transparent"
android:layout_alignParentLeft="true"
android:layout_alignParentTop="true"
android:clipChildren="true"
>
<ImageView
android:id="@+id/graphImage"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:scaleType="matrix"
android:background="@android:color/transparent"
android:contentDescription="@string/stroom_grafiek"
/>
</RelativeLayout>
ジャワ:
scale = new ScaleAnimation((float)0,
(float)1, (float)1, (float)1,
Animation.RELATIVE_TO_SELF, (float)0,
Animation.RELATIVE_TO_SELF, (float)1);
scale.setDuration(1000);
graphImageInnerWrap.startAnimation(scale);
どちらの場合も、ImageView はまだスケーリングされています。誰かが私を正しい方向に向けてくれることを願っています。