加载一个大的图片到内存
{
//图片解析的配置
BitmapFactory.Options opts = new Options();
//不去真的解析图片,只是获取图片的头部信息。宽高。
opts.inJustDecodeBounds = true;
BitmapFactory.decodeFile("/sdcard/a.jpg", opts);
int imageHeight = opts.outHeight;
int iamgeWidth = opts.outWidth;
//计算缩放比例
int scaleX = imageWidth/windowWidth;
int scaleY = imageHeight/windowHeight;
int scale = 1;
if(scaleX>scaleY & scaleY>=1){
scale = scaleY;
}
if(scaleY>scaleX & scaleX>=1){
scale = scaleX;
}
//真的解析图片
opts.inJustDecodeBounds = false;
//采样率
opts.inSampleSize = scale;
Bitmap bitmap = BitmapFactory.decodeFile("/sdcard/a.jpg", opts);
imageView.setImageBitmap(bitmap);
}