0

メモリの問題を解決するために以下のコードを使用しています。私の画像は 123.jpg という名前の res/drawable に存在します。以下のチュートリアルに従っています

http://android-solution-sample.blogspot.com/2011/10/bitmap-out-of-memory.html

 BitmapFactory.Options o = new BitmapFactory.Options();

 o.inJustDecodeBounds = true;

 FileInputStream fis = new FileInputStream(files[i].getAbsolutePath());
 BitmapFactory.decodeStream(fis, null, o);
 fis.close();
 final int REQUIRED_SIZE = 70;
 int width_tmp = o.outWidth, height_tmp = o.outHeight;
 int scale = 1;
 while (true) {
     if (width_tmp / 2 < REQUIRED_SIZE || height_tmp / 2 < REQUIRED_SIZE)
         break;
     width_tmp /= 2;
     height_tmp /= 2;
     scale *= 2;
 }
 BitmapFactory.Options op = new BitmapFactory.Options();
 op.inSampleSize = scale;
 fis = new FileInputStream(files[i].getAbsolutePath());
 bitmap = BitmapFactory.decodeStream(fis, null, op);
 fis.close();
4

0 に答える 0