早晨刷微博看见这个详谈高大上的图片加载框架Glide -应用篇 文章。因为项目一直在用Glide所以仔细看了看,人家写的很详细,我这就当做写笔记吧,把基本用法和比较牛逼,但是自己不知道的功能总结一下,如果想看详细讲解的话直接看点开上面的地址即可。
首先还是老样子,导包
dependencies {
compile 'com.github.bumptech.glide:glide:3.6.1'//glide谷歌加载图片包
}
基本加载图片方法
Glide.with(context).load("http://img2.3lian.com/2014/f6/173/d/51.jpg").into(imageView);
其中
Glide
.
with
(
context
)其中with可以传Context,Activity,FragmentActivity
它能根据传入参数Activity/Fragment的生命周期保持一致,去暂停和执行图片加载,这也节省了不必要的流量浪费。
load()--1.String,2.资源文件(int),3.本地文件(File),4.URI(@Deprecated系统不推荐使用)
1.Glide.with(this).load("http://img2.3lian.com/2014/f6/173/d/51.jpg").into(imageView);
2.int resourceId=R.mipmap.image;
Glide.with(context).load(resourceId).into(imageView);
3.File file = new File(Environment.getExternalStorageDirectory() + File.separator + "image", "image.jpg");
Glide.with(this).load(file).into(imageView);
4.File file = new File(Environment.getExternalStorageDirectory() + File.separator + "image", "image.jpg");
Uri uri = Uri.fromFile(file);
Glide.with(this).load(uri).into(imageView);//uri加载方式
占位图片(默认显示的图片).placeholder()参数1.drawable,2.int。都是传递的本地图片
错误图片.error()参数1.drawable,2.int。都是传递的本地图片
监听图片错误原因
Glide.with(this).load("").listener(new RequestListener<String, GlideDrawable>() {
@Override
public boolean onException(Exception e, String model, Target<GlideDrawable> target, boolean isFirstResource) {
//图片加载错误回调
return false;
}
@Override
public boolean onResourceReady(GlideDrawable resource, String model, Target<GlideDrawable> target, boolean isFromMemoryCache, boolean isFirstResource) {
//图片加载成功回调
return false;
}
});
crossFade(渐入渐出,这是我喜欢的一个效果,原来这个参数还可以控制显示的时间呀。嘿嘿)
.crossFade()可以不输入值,也可以传需要几s显示出来。例:2s显示.crossFade(2000)。