Я использую ViewFlipper, чтобы показать некоторые изображения из БД.
Затем я беру значения BLOB-объекта в ArrayList, преобразуя каждый байтовый массив в растровое изображение.
А затем я устанавливаю эти изображения для каждого изображения в ViewFlipper.
Если количество изображений ниже 10, то оно работает нормально. Но если он превышает 10, то внезапно он получил исключение:
OutOfMemoryException: размер растрового изображения превышает бюджет виртуальной машины.
Когда я использую inSampleSize для BitmapFactory.Options, он работает нормально. Но я хочу отобразить изображение с фактической высотой и шириной. Как я могу сделать это без исключения?
Мой код:
ViewFlipper vfImage = (ViewFlipper)findViewById(R.id.vfImage);
for(Photos objPhotos :arPhotos)
{
byte[] btImages = null;
Bitmap bitmapImage = null;
btImages = objPhotos.getImage();
ImageView imgPhoto= new ImageView(this);
bitmapImage = BitmapFactory.decodeByteArray(btImages, 0, btImages.length);
imgPhoto.setImageBitmap(bitmapImage);
vfImage.addView(imgPhoto);
}
vfImage.startFlipping();
Пожалуйста, помогите мне ..
Спасибо ...