【发布时间】:2012-10-16 16:36:45
【问题描述】:
我试图找到一种方法来获取图像的尺寸,这样我就知道如何缩放它。这样做的目的是不存在这些内存问题。
所以我在做的是:
BitmapFactory image = new BitmapFactory();
BitmapFactory.Options opts = new BitmapFactory.Options();
image.decodeFile(_path,opts);
if(opts.outHeight > 2048 || opts.outWidth > 2048){
opts.inSampleSize= 2;
}
VIEW.setImageBitmap(image.decodeFile(_path,opts));
问题是在第一次解码时,如果设备没有足够的内存就会出错。
我的做法是把它放在一个 trycatch 块中,然后在 if.. 中添加额外的语句。|| opts.outHeight == -1 || opts.outWidth == -1){
所以我想知道的是,有没有一种方法可以在不占用太多解码内存的情况下做我想做的事情?毕竟我只需要知道原始图像的高度和宽度。
【问题讨论】:
-
你看到了吗training
-
我没有,它解决了问题。我不知道 inJustDecodeBounds
标签: java android image bitmapfactory