Декодировать часть растрового изображения на Android

У меня OutOfMemoryError работает с Android. У меня есть растровое изображение 1000x1000 с 10 изображениями спрайта. (каждое изображение 100x100)

Я могу загрузить только часть (100x100) растрового изображения?

BitmapFactory.decodeResource() производит OutOfMemoryError, потому что мне нужно загрузить все растровое изображение. А мне нужен только 100х100.


person user3442767    schedule 20.03.2014    source источник
comment
несколько раз спрашивали   -  person njzk2    schedule 20.03.2014
comment
Разбейте спрайт на более мелкие части.   -  person LightYearsBehind    schedule 20.03.2014
comment
(примечание: принятый ответ не полный, второй ответ должен быть более правильным)   -  person njzk2    schedule 20.03.2014


Ответы (1)


Попробуйте использовать BitmapRegionDecoder.

Пример

BitmapRegionDecoder decoder = BitmapRegionDecoder.newInstance(myStream, false);
Bitmap region = decoder.decodeRegion(new Rect(100, 100, 100, 100), null);
person Ion Aalbers    schedule 20.03.2014