您的位置:首页 > 移动开发 > Android开发

图片加载的基本方式

2016-04-28 20:49 351 查看
图片很耗内存,同时了也是极其重要的一个模块。各种各样的色彩,让app更加酷炫。

主要涉及到的类
BitmapFactory

BitmapFactory.Options

加载图片的方式

BitmapFactory的一系列decode函数。通常,不直接加载图片,而是获取图片的大致信息。比如高度,宽度,图片类型,然后根据实际情况,获取缩放后的图片(试想,磁盘中的图片很大,直接加载图片,只会造成OOM  (^-^))

获取图像大略信息,主要是要设置 BitmapFactory.Options.inJustDecodeBounds = true

BitmapFactory.Options options = new BitmapFactory.Options();
options.inJustDecodeBounds = true;
BitmapFactory.decodeResource(getResources(), R.id.myimage, options);
int imageHeight = options.outHeight;
int imageWidth = options.outWidth;
String imageType = options.outMimeType;


int BitmapFactory.Options.outHeight  图片的实际高度

int BitmapFactory.Options.outWidth  图片的实际宽度

int BitmapFactory.Options.inSample  缩放的系数,比如 inSample=2时,内存图片的高度和宽度都是实际图片的一半。

获取到图片的大略信息之后,可以计算Options.inSample的值,然后就是直接加载图像了。

Android3.0及其后版本,可以复用已经申请的图片内存。

主要需要设置

Bitmap BitmapFactory.Options.inBitmap   这是将被复用的图片。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  Android