そのため、Web から大量のサムネイル (おそらく最大 100 以上) を読み込もうとしていますが、エミュレータでは約 30、電話自体では約 80 ~ 85 のメモリが不足しているようです。
これはうまくいきませんが、方法がなければなりません-
画像をキャッシュメモリに保存してそこからロードしようとしましたが、それでもメモリが不足します。
大量の Web サムネイル画像を読み込む正しい方法は何ですか?
各画像は約 50 kb です。基本的には、作成した CreateImage メソッドを使用して imageViews を動的に追加します。これにより、URL と画像名に基づいて各サムネイルが読み込まれ、HorizontalScollView の動的な imageView に設定されます。
private void createImages(String URL, String imageName){
ImageView ImageThumbnails = new ImageView(this);
ImageThumbnails.setId(ImageThumbName);
ImageThumbnails.setLayoutParams(new LinearLayout.LayoutParams(LinearLayout.LayoutParams.MATCH_PARENT, LinearLayout.LayoutParams.MATCH_PARENT));
ImageThumbnails.getLayoutParams().height = 85;
ImageThumbnails.getLayoutParams().width = 85;
ImageThumbnails.setPadding(4, 4, 4, 4);
ImageThumbnails.setScaleType(ImageView.ScaleType.FIT_XY);
ImageThumbnails.setOnClickListener(this);
String path = Environment.getExternalStorageDirectory()+ "/" + imageName;
File imgFile = new File(path);
if(imgFile.exists())
{
Bitmap myBitmap = BitmapFactory.decodeFile(imgFile.getAbsolutePath());
Bitmap bmpCompressed = Bitmap.createScaledBitmap(myBitmap, 85, 85, true);
ImageThumbnails.setImageBitmap(bmpCompressed);
}
ll.addView(ImageThumbnails);
}
前もって感謝します、