控件Gallery载入大图片导致OutOfMemoryError内存溢出问题

1. http://www.pocketdigi.com/20101029/138.html

在使用Gallery控件时,如果载入的图片过多,过大,就很容易出现OutOfMemoryError异常,就是内存溢出。这是因为Android默认分配的内存只有8M,而载入的图片如果是JPG之类的压缩格式,在内存中展开时就会占用大量的空间,也就容易内存溢出。这时可以用下面的方法解决:

1
2
3
4
5
6
7
8
9
10
	      ImageView i = new ImageView(mContext);
	      BitmapFactory.Options options=new BitmapFactory.Options();
          options.inSampleSize = 10;
          //貌似这个options的功能是返回缩略图,10即表示长和宽为原来的1/10,即面积为原来的1/100
          //缩略图可以减少内存占用
	      Bitmap bm = BitmapFactory.decodeFile(lis.
	                            get(position).toString(),options);
	      i.setImageBitmap(bm);
	      bm.recycle();
	      //资源回收
2.  http://www.iteye.com/wiki/topic/1066593


你可能感兴趣的:(控件Gallery载入大图片导致OutOfMemoryError内存溢出问题)