ほぼ 150 の画像フレームを使用して、フレームごとのアニメーションでアプリケーションを作成しています。アニメーションは、Handler を使用して Image ビューの背景イメージを変更することで再生されます。ハンドラー内で、フォルダー /mnt/sdcard/Android/data/ApplicationPackage から画像を取得し、次の方法で画像ビューの背景として動的に変更しています。
FileInputStream in;
in = new FileInputStream(mFrames.get(imgpos));
bitmap = BitmapFactory.decodeStream(in);
if (in != null)
{
in.close();
}
一部の画像ではビットマップの作成に時間がかかるため、ファイル入力ストリームのデコードに問題が発生します。画像ファイルのサイズは各画像でほぼ 40 KB 未満ですが、同じサイズのファイルの外部ディレクトリから画像をデコードするのにかかる時間は異なります。ファイルサイズと読み込みをサンプリングしようとしましたが、画像の鮮明さに直接影響します. 画像を外部フォルダからビットマップにロードし、すべての画像を同じ期間でロードするより良い方法を教えてください。
ありがとう、ティム