2013-07-01 3 views
0

Ищете изменение размера шести изображений, загружаемых с размера 1200x1200 в 1024x1024 без ошибки outOfMemory. До сих пор использование Bitmap.createScaledBitmap(src, dstWidth, dstHeight, filter) вызывало проблемы с OOM. и масштабируя его, используя BitmapFactory.options и указав inSampleSize, лучший может получить меня размером 600x600.изменение размера изображения до точного размера

Есть ли решение для масштабирования изображений до 1024x1024 или нет?

и общий вопрос, почему у нас всегда есть проблемы с Bitmap в android, не могут ли они исправить сборщик мусора, чтобы собрать все неиспользованные растровые изображения?

+0

Возможный дубликат [Как изменить размер растрового изображения на Android?] (Http://stackoverflow.com/questions/4837715/how-to-resize-a-bitmap-in-android) – g00dy

+0

@ g00dy не дубликат просто потому что простые решения, дающие там все, дают ошибку OOM. Поэтому я ищу другое решение! –

ответ

0

На данный момент фотография отсутствует? Если он находится внутри папки mdpi, попробуйте поместить его внутри hdpi или xhdpi. Это однажды решило мою проблему. Я предполагаю, что Android также пытается изменить размер изображения, поэтому это приводит к ошибкам памяти.

+0

Android изменит размер изображения в файле res на основе разницы между классом dpi dpi ресурса и фактической плотностью экрана устройства. Если вы не хотите, чтобы Android изменил размер, просто поместите его в папку/drawable/folder –

+0

Да, я знаю это, спасибо. –

+0

hey @ C.d. изображения находятся в SdCard не в папке с возможностью переноса ... И я думаю, что вы не получили мой вопрос. Я хочу изменить размер изображения с 1200x1200 до 1024x1024, расположенного в SdCard, и мне бы хотелось избежать использования 'createScaledBitmap' метод, так как он обязательно вызовет ошибку OOM. –

Смежные вопросы