私は ListView を持っています。ListView の各項目ビューは、それらを作成およびデコードしている間にいくつかのビットマップを描画しています。しかし、スクロール中は、Samsung S3 でテストしてもスムーズではありません。
私の解決策は、スクロール中に静止画像にすることです。しかし、それを実装するのは難しいです。
パフォーマンスを向上させる簡単な方法またはより良い方法はありますか?
主な描画コード:
Bitmap bitmap = decoder.getFrame(index);
if (bitmap != null) {
if (!bitmap.isRecycled()) {
canvas.drawBitmap(bitmap, new Rect(0, 0, bitmap.getWidth(), bitmap.getHeight()), new Rect(0, 0, fixedSize, fixedSize), paint);
invalidate();
}
}
public Bitmap getFrame(int n) {
if (frameCount <= 0)
return null;
if (n >= frames.size())
return null;
n = n % frameCount;
return ((GifFrame) frames.elementAt(n)).image;
}