2010-10-22 2 views
0

Некоторые фон. В настоящее время у меня есть класс, который создается несколько раз, и внутри класса находится переменная-член Bitmap, которая устанавливается с помощью BitmapFactory.decodeResource при создании экземпляра. В любое время я, возможно, придется применить матрицу к растровому изображению, и это делается в настоящее время с помощью:Android BitmapFactory.decodeResource несколько раз

public void applyMatrix(Matrix matrix) { 
    mBitmap = Bitmap.createBitmap(mBitmap, 0, 0, mBitmap.getWidth(), mBitmap.getHeight(), matrix, true); 
} 

Я делаю предположение, что каждый раз, когда я создать экземпляр этого класса он должен загрузить Bitmap в памяти (опять же). Неужели это так? Я также рассматривал возможность предварительной загрузки всех растровых изображений в массив и ссылки на индекс вместо этого, но я все равно столкнулся бы с проблемой, когда мне нужно преобразовать Bitmap - мне нужно было бы создать новый Bitmap из того, что было в памяти. Есть лучший способ сделать это?

+0

У вас возникли проблемы с приложением приложения при применении вашего подхода? – Zelimir

+0

Нет, у меня нет, но я все-таки переписал все, чтобы загрузить все растровые изображения перед началом работы и использовать манипуляции с холстом. – methodin

ответ

0

Вы всегда должны преобразовывать холст, а не растровое изображение. Это облегчает все проблемы, о которых я беспокоюсь.

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