当前位置: 移动技术网 > IT编程>移动开发>Android > Android Glide的简单使用

Android Glide的简单使用

2019年07月24日  | 移动技术网IT编程  | 我要评论

别让机遇错过你,不锈钢槽钢,二炮美女

1.)添加引用 build.gradle 中添加配置

  compile 'com.github.bumptech.glide:glide:3.7.0'

2.)设置绑定生命周期

   我们可以更加高效的使用glide提供的方式进行绑定,这样可以更好的让加载图片的请求的生命周期动态管理起来

 glide.with(context context);// 绑定context
 glide.with(activity activity);// 绑定activity
 glide.with(fragmentactivity activity);// 绑定fragmentactivity
 glide.with(fragment fragment);// 绑定fragment

3. )简单的加载图片实例

glide.with(this).load(imageurl).into(imageview);

4.)设置加载中以及加载失败图片

api里面对placeholder()、error()函数中有多态实现 用的时候可以具体的熟悉一下

glide.with(this).load(imageurl).placeholder(r.mipmap.ic_launcher).error(r.mipmap.ic_launcher).into(imageview);

5.)设置跳过内存缓存

glide.with(this).load(imageurl).skipmemorycache(true).into(imageview);

6.)设置下载优先级

glide.with(this).load(imageurl).priority(priority.normal).into(imageview);

7.)设置缓存策略

glide.with(this).load(imageurl).diskcachestrategy(diskcachestrategy.all).into(imageview);
 // 策略解说:
 // all:缓存源资源和转换后的资源
 // none:不作任何磁盘缓存
 // source:缓存源资源
 // result:缓存转换后的资源

8.)设置加载动画

 //api也提供了几个常用的动画:比如crossfade()
glide.with(this).load(imageurl).animate(r.anim.item_alpha_in).into(imageview);

9.)设置缩略图支持

 // 这样会先加载缩略图 然后在加载全图
glide.with(this).load(imageurl).thumbnail(0.1f).into(imageview);

10.)设置加载尺寸

glide.with(this).load(imageurl).override(800, 800).into(imageview);

11.)设置动态转换

glide.with(this).load(imageurl).centercrop().into(imageview);
 // api提供了比如:centercrop()、fitcenter()等函数也可以通过自定义transformation
 //  自定义transformation具体使用
glide.with(this).load(imageurl).transform(new glideroundtransform(this)).into(imageview);

12.)设置要加载的内容

// 项目中有很多需要先下载图片然后再做一些合成的功能,比如项目中出现的图文混////排,该如何实现目标下
  glide.with(this).load(imageurl).centercrop().into(new simpletarget<glidedrawable>() {
   @override
   public void onresourceready(glidedrawable resource, glideanimation<? super glidedrawable> glideanimation) {
    imageview.setimagedrawable(resource);
   }
  });

13 .)设置监听请求接口 ,设置监听的用处 可以用于监控请求发生错误来源,以及图片来源 是内存还是磁盘

glide.with(this).load(imageurl).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) {
    //imageview.setimagedrawable(resource);
    return false;
   }
  }).into(imageview);

14.)设置动态gif加载方式

 glide.with(this).load(imageurl).asbitmap().into(imageview);//显示gif静态图片
 glide.with(this).load(imageurl).asgif().into(imageview);//显示gif动态图片

15.)缓存的动态清理

 glide.get(this).cleardiskcache();//清理磁盘缓存 需要在子线程中执行
 glide.get(this).clearmemory();//清理内存缓存 可以在ui主线程中进行

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持移动技术网!

如对本文有疑问,请在下面进行留言讨论,广大热心网友会与你互动!! 点击进行留言回复

相关文章:

验证码:
移动技术网