Glide的用法

来源:互联网 发布:办公提醒软件 编辑:程序博客网 时间:2024/06/05 03:15

做项目之前   首先就是需要添加Glide的依赖  和网络请求的依赖

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

.添加图片淡入加载的效果

.crossFade()

 缓存到磁盘
Glide.with(this).load(url).animate(android.R.anim.slide_in_left).diskCacheStrategy(DiskCacheStrategy.ALL).into(myImageview);)


基本用法
  Glide.with(mContext)  
            .load(url)  
            .placeholder(R.drawable.loading_spinner)  
            .crossFade()  
            .into(myImageView);
清除缓存

Glide.get(this).clearMemory(); //主线程运行

/** 子线程运行 */  new Thread(new Runnable() {    @Override    public void run() {        Glide.get(getApplicationContext()).clearDiskCache();    }}).start();

滚动加载,不滚动时不加载,提高listview效率:

Glide.with(context).resumeRequests()

Glide.with(context).pauseRequests()


@Overridepublic void onScrollStateChanged(AbsListView view, int scrollState) {    // TODO Auto-generated method stub    //每一条数据都是一个Map    switch (scrollState){        case SCROLL_STATE_FLING:            Log.i("Main","用户在手指离开屏幕之前,由于滑了一下,视图仍然依靠惯性继续滑动");            Glide.with(getApplicationContext()).pauseRequests();            //刷新            break;        case SCROLL_STATE_IDLE:            Log.i("Main", "视图已经停止滑动");            Glide.with(getApplicationContext()).resumeRequests();            break;        case SCROLL_STATE_TOUCH_SCROLL:            Log.i("Main","手指没有离开屏幕,视图正在滑动");            Glide.with(getApplicationContext()).resumeRequests();            break;    }}

当你想清除掉所有的图片加载请求时,这个方法可以帮助到你

Glide.clear()

Glide支持多种磁盘缓存策略:

DiskCacheStrategy.NONE :不缓存图片
DiskCacheStrategy.SOURCE :缓存图片源文件
DiskCacheStrategy.RESULT:缓存修改过的图片
DiskCacheStrategy.ALL:缓存所有的图片,默认

.图片缓存机制

Glide缓存策略

Glide默认开启磁盘缓存和内存缓存,当然也可以对单张图片进行设置特定的缓存策略。
设置图片不加入到内存缓存



Glide      .with( context )    .load( eatFoodyImages[0] )    .skipMemoryCache( true )    .into( imageViewInternet )

0 0
原创粉丝点击