Glide是一款由Bump Technologies开发的图片加载框架,使得我们可以在android平台上以极度简单的方式加载和展示图片。
1, 使用glide 引入库到项目中(AS)
dependencies {
compile 'com.github.bumptech.glide:glide:4.0.0'
}
如果是eclipse需要在lib加入jar包
2, 有可能需要加载网络图片 在 Manifest中加入访问网络的权限
<uses-permission android:name="android.permission.INTERNET" />
3, 向imageView中加载图片
Glide.with(this).load(url).into(imageView);
load()有多个重载方法,可以根据所要加载图片资源进行选择
3.1 加载本地图片
File file = new File(getExternalCacheDir() + "/image.jpg");
Glide.with(this).load(file).into(imageView);
3.2 加载资源图片
int resource = R.drawable.image;
Glide.with(this).load(resource).into(imageView);
3.3 加载二进制流
byte[] image = getImageBytes();
Glide.with(this).load(image).into(imageView);
3.4 加载uri对象
Uri imageUri = getImageUri();
Glide.with(this).load(imageUri).into(imageView)
into()是要加入图片的imageView对象
4, 占位图(加载过程中显示的内容)
Glide.with(context) //加载的过程中会使用load图片资源占位
.load(url)
.placeholder(R.draweable.load)
.into(imageView);
异常占位和禁用缓存
Glide.with(context) .load(url) .placeholder(R.drawable.loading) .error(R.drawable.error) .diskCacheStrategy(DiskCacheStrategy.NONE) .into(imageView);5, 指定图片的格式
正常使用的时候Glide会自动判断图片的格式如果要指定图片的格式
只加载静图 加入asBitmap()方法即可
Glide.with(context) .load(url) .asBitmap( ) .placeholder(R.drawable.loading) .error(R.drawable.error) .diskCacheStrategy(DiskCacheStrategy.NONE) .into(imageView); 只加载动图 asGit() Glide.with(context) .load(url) .asGit() .placeholder(R.drawable.loading) .error(R.drawable.error) .diskCacheStrategy(DiskCacheStrategy.NONE) .into(imageView); 6, 指定图片大小 多数情况下不需要指定图片大小,当需要的图片尺寸小鱼实际的图片尺寸,避免内存浪费,避免加载图片OOM Glide.with(context) .load(url) .placeholder(R.drawerable.load) .error(R.drawerabler.error) .diskCacheStrategy(DiskCacheStratey.NONE) .override(100,100) //设置图片尺寸 像素 ,into(imageView);
