#android
#Android
Вопрос:
Я пытаюсь создать ListAdapter для растровых изображений, хранящихся в assets/
(размер каждого составляет около 300 кб).
У меня 1 действие содержит GridView, а 2-е — это просто ImageView.
Когда я выбираю одно из изображений из 1-го действия для показа во втором действии, а затем пытаюсь сохранить в файловой системе, это часто выбрасывает мне OOM (OutOfMemory) или Bitmap превышает бюджет виртуальной машины.
Мой запрос следующий: какое решение вы можете предложить для организации бимапов из assets/
для использования через ListAdapter?
Ответ №1:
Один из приемов, который вы можете использовать для уменьшения требований к памяти, заключается в передаче параметров используемому вами методу декодирования BitmapFactory. В настройках установите inSampleSize равным 2 или 4, чтобы сократить количество пикселей в 4 или 16 раз соответственно. Смотрите:http://d.android.com/reference/android/graphics/BitmapFactory .Параметры.html#Без выборки
Также не забудьте вызвать Bitmap.recycle() для растровых изображений, которые вам больше не нужны. Это освободит собственную память быстрее, чем ожидание ее сбора мусора.
Комментарии:
1. Спасибо за информацию, это может помочь, потому что мне не нужны изображения высокого качества, просто нужно, чтобы они покрывали весь экран