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