加载大图片内存会溢出的解决方法

来源:互联网 发布:csgofps优化参数 编辑:程序博客网 时间:2024/06/05 00:19

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

options.inJustDecodeBounds=true;//只解析图片的长宽高等要素,不实际加载图片

Bitmap bitmap=BitmapFactory.decodeFile("FileAbsolutePath",options);//这里的bitmap为空,options中获取了图片资源的要素信息

options.inJustDecodeBounds=false;//关闭该功能,解析图片资源为位图

int scale=(int)(options.outHeight/(float)200);//获取图片的高度并除以200得到缩放比例

if(scale<=0)

scale=1;

options.inSampleSize=scale;//设置实际加载图片的尺寸大小

bitmap=BitmapFactory.decodeFile("FileAbsolutePath",options);//这里的bitmap为设置了缩小比例后加载的Bitmap对象


参考网址http://blog.sina.com.cn/s/blog_9d448a7501017pxd.html

0 0