用于非常大的图像的android图像缩放方法;

时间:2012-05-18 07:26:13

标签: android android-image

我在尺寸为1000x800的服务器上有图像。我使用以下方法下载它:

  1. 下载完整图片,将数组中的像素值从中解码为位图并进行缩放。

  2. 下载部分图片,将它们放在画布上并缩放画布。

  3. 哪种方法更好地关注内存问题?

1 个答案:

答案 0 :(得分:1)

最好的方法是:

3)对图像进行缩小/缩放而不对其进行解码

public static Bitmap decodeSampledBitmapFromResource(Resources res, int resId,
    int reqWidth, int reqHeight) {

  // First decode with inJustDecodeBounds=true to check dimensions
  final BitmapFactory.Options options = new BitmapFactory.Options();
  options.inJustDecodeBounds = true;
  BitmapFactory.decodeResource(res, resId, options);

  // Calculate inSampleSize
  options.inSampleSize = calculateInSampleSize(options, reqWidth, reqHeight);

  // Decode bitmap with inSampleSize set
  options.inJustDecodeBounds = false;
  return BitmapFactory.decodeResource(res, resId, options);
}

解释here。示例代码也来自那里。