2

ImageView でフレーム アニメーションを表示する必要があります。AnimationDrawable を使用して、クリック イベントでアニメーションを再生しています。単一のアニメーションを表示すると、正常に機能します。しかし、クリックされたボタンに基づいて、3 つの異なるアニメーションを表示する必要があります。2 番目のアニメーションを再生すると、OutOfMemoryError がスローされます。同じ問題に関する他の投稿で示唆されているように、アニメーションが終了した後、ビットマップをリサイクルしています。しかし、アプリでは、同じボタンをもう一度クリックすると、同じアニメーションを表示する必要があります。しかし、リサイクルされたビットマップを使用しようとしても機能しません..この問題の回避策はありますか???

4

1 に答える 1

3

次のフォーム コメント: ロードするデータが多すぎます。

ARGB 画像を想定:

width x height x images x colordept = bytes used
450 * 420 * 20 * 4 = 30240000.

アニメーション全体をロードすると、14 MiB になります。これはラムを爆破することが保証されています。

于 2013-10-12T09:45:24.683 に答える