私はAndroidで非常に基本的なギャラリーを構築しています。これは、カメラフォルダーの最後の画像を表示し、ユーザーは左にスライドして前の画像を表示できます。
viewpagerを使用して実装を完了し、sampleSizeを使用してpagerAdapterを使用して画像を拡大縮小しました。私の問題は、実装がデフォルトのギャラリーアプリほど効率的ではないことです。画像をスライドするたびに、次の画像が読み込まれるまで約200ミリ秒待つ必要があります。したがって、基本的に、それを実装する方法についての私の考えはうまくいきません。
どうすればこれを効率的に行うことができますか?可能であれば、後でズームインおよびズームアウトできる実装を使用しますか?
これは有望に見えますが、ドローアブルの代わりにファイルを使用して実装する方法がわかりません http://www.androidviews.net/2012/11/photoview/
編集:
フォトビュー(ハッキングされたビューページャー)を使用して速度を少し向上させることができましたが、ファイルパスをビットマップまたはドローアブルに変換するには時間がかかりすぎます。
dilixとiDroidExplorerによって提案された次の2つの方法を試しました。
// Method A
Drawable d = Drawable.createFromPath(imagePath);
imageView.setImageDrawable(d);
// Method B
Bitmap myBitmap = BitmapFactory.decodeFile(imagePath);
imageView.setImageBitmap(myBitmap);
ただし、どちらもエラーが発生しますBitmap too large to be uploaded into a texture
。画像をimageViewにできるだけ速く取得し、どういうわけかこのエラーを回避する必要があります。そうすれば、まともな速度が得られるでしょう。現在、画像を拡大縮小してドローアブルに変換していますが、あまり効率的ではありません。