так что у меня есть просмотр списка с изображениями из некоторых URL, я пытался сохранить изображения после загрузки в массив списков растровых изображений, но в итоге в списке на моем устройстве только 2-3 изображения (эмулятор показывает все изображения), поэтому я попытался кэшировать изображения после загрузки, и я использую: `
for (int i = 0; i < url.length; i++){
URL urlAdress = new URL(url[i]);
HttpURLConnection conn = (HttpURLConnection) urlAdress
.openConnection();
conn.setDoInput(true);
conn.connect();
InputStream is = conn.getInputStream();
Bitmap bmImg = BitmapFactory.decodeStream(is);
// picList.add(bmImg);
File cacheDir = context.getCacheDir();
File f = new File(cacheDir, "000" + (i + 1));
FileOutputStream out = null;
try {
out = new FileOutputStream(f);
bmImg.compress(Bitmap.CompressFormat.JPEG, 80, out);
} catch (Exception e) {
e.printStackTrace();
} finally {
try {
if (out != null)
out.close();
} catch (Exception ex) {
}
}
}
`, чтобы сохранить фотографии в кэш, а затем я использую это для загрузки изображений из кэша в адаптер:
File cacheDir = context.getCacheDir();
File f = new File(cacheDir, "000" + position);
Drawable d = Drawable.createFromPath(f.getAbsolutePath());
holder.icon.setImageDrawable(d);
но я все еще получаю 3-4 фотографии из 9, это проблема памяти?(все фото вместе имеют 300 кб)