加载和显示图片是很消耗内存的一件事,BitmapFactory.Options 类, 允许我们以何种方式读取图片,避免outofmemory
BufferedInputStream in = new BufferedInputStream(newFileInputStream(
new
File
(
path
)));
BitmapFactory
.
Options
options
=
new
BitmapFactory
.
Options
();
//得到的options设置只读图片的bounds,以免过大内存溢出
options
.
inJustDecodeBounds
=
true
;
BitmapFactory
.
decodeStream
(
in
,
null
,
options
);
options.outWidth 读取图片宽度
options.outHeight 读取图片高度
然后可以根据
options.inSampleSize 设置大小 可以设置成变为原来的几分之一或是根据屏幕而变化
options
.
inJustDecodeBounds
=
false
;
bitmap
=
BitmapFactory
.
decodeStream
(
in
,
null
,
options
);