0

私はフラグメントを扱っていますが、一部のフラグメントには画像が含まれている場合があります。

最初に画像を内部ストレージにダウンロードしてから、oncreateview が呼び出されたときにフラグメントに画像を表示したいと考えています。

私は次のコードでこれを行います:

Bitmap bitmap = BitmapFactory.decodeFile(getActivity().getFileStreamPath(image).getAbsolutePath());

    ((ImageView) rootView.findViewById(R.id.ivStory))
            .setImageBitmap(bitmap);

問題は、フラグメントにスワイプすると、「約2秒」の遅延があることです..

今日は LRUcache をいじっていますが、うまくいかないようです..

誰かが手がかりを持っていますか?画像が大きすぎませんか?タブレットでも実行する必要があるため、大きな解像度にする必要がありますか?

4

1 に答える 1

0

問題は、decodeFileメソッドの実行に時間がかかることです。decodeFileメソッドは ( ではなく) 別のスレッドで実行する必要があります。実行UI-Threadが完了したら、 を使用してHandlerを更新しUIます。

于 2013-03-28T15:37:15.213 に答える