ここに来てから数か月後、ついに私の問題を提出する番になりました。
インターネットから画像をロードするカスタム ArrayAdapter を備えた ListView があります (行ごとに 1 つの画像)。ArrayAdapter で onImageLoaded メソッドを呼び出す ImageCache クラスを作成しました。
public void onImageLoaded(Bitmap image, ImageView view){
view.setImageBitmap(image);
Utils.log("start animation : " + view.toString());
view.startAnimation(mAnim);
}
問題は、1 つの ImageView で startAnimation (おそらく、fadeIn) が呼び出されるたびに、現在アニメーション化されているすべての ImageView でアニメーションが最初から再実行されているように見え、スクロール時にいくつかの (またはすべての) 画像の奇妙な点滅が発生することです。
Utils.log は、startAnimation が正常に呼び出されたことを示しています (つまり、ListView に表示される新しい ImageView ごとに 1 回だけ)。
私のアニメーション XML の内容は次のとおりです。
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android"
android:interpolator="@android:anim/linear_interpolator"
android:shareInterpolator="true">
<alpha
android:fromAlpha="0.0"
android:toAlpha="1.0" android:duration="400"/>
</set>
これは誰かに起こったことがありますか?私が間違っていることがわかりますか?
ありがとう!