下面先讲解关于BitmapFactory.options选项的所有字段:
以上是摘自Android官方的文档:
下面我们说一个问题:
怎么获取图片的大小呢?
首先我们要把这个图片转化成Bitmap,然后在利用Bitmap的getwidth()和getHeight()方法就可以取得图片的宽和高了,
但是此时问题来了,在通过BitmapFactory.decodeFile(Sting file)方法转化成Bitmap时,遇到大一些的图片时,我们经常遇到OOM(out of memory)的问题,怎么避免呢?
此时就用到了上面提到的BitmapFactory.options这个类:
BitmapFactory.options这个类,有一个字段为: inJustDecodeBounds
如果我们把它设为true,那么BitmapFactory.decodeFile(String path, Options opt)并不会真的返回一个Bitmap给你,它仅仅会把它的宽,高取回来给你,这样就不会占用太多的内存,也就不会那么频繁的发生OOM了。
BitmapFactory.Options options = new BitmapFactory.Options();
options.inJustDecodeBounds = true;
Bitmap bmp =