图片加载11:为Glide添加监听

Glide4的监听机制和Glide3的监听机制有很大的变化,本文只会介绍Glide4的监听机制。

首先粘贴一下代码,为Glide添加一个监听

    //加载网络图片
    Glide.with(this)
            .asBitmap()
            .load("https://img.pc841.com/2018/0922/20180922111049508.jpg")
            .diskCacheStrategy(DiskCacheStrategy.DATA)
            .addListener(new RequestListener<Bitmap>() {

                @Override
                public boolean onResourceReady(Bitmap resource, Object model, Target<Bitmap> target, DataSource dataSource, boolean isFirstResource) {
                    //图片加载成功后返回

                    //resource:目标图bitmap
                    //model:load方法里面的值
                    //target:ImageView本身
                    //dataSource:图片资源的来源,MEMORY_CACHE、LOCAL、REMOTE
                    //isFirstResource:是否是第一个资源

                    return false;
                }

                @Override
                public boolean onLoadFailed(@Nullable GlideException e, Object model, Target<Bitmap> target, boolean isFirstResource) {
                    //图片加载失败后返回

                    //e:报错信息
                    //model:load方法里面的值
                    //target:ImageView本身
                    //isFirstResource:是否是第一个资源

                    return false;
                }

            })
            .into(image_view);

以上代码的监听有两个回调方法,分别是:onResourceReadyonLoadFailed,当图片成功加载后回调onResourceReady方法,当图片加载失败后回调onLoadFailed方法。

[onResourceReady的返回参数]

  • resource

目标图片的bitmap。

  • model

load方法的参数值,如果加载的是res里的资源图片,model就是Integer,如果加载的是url,那么model就是url。

model的类型是Object的,所以model就是加载数据的对象。

  • target

ImageView本身。

  • dataSource

图片资源的来源,如果来自缓存,那么值为MEMORY_CACHE。如果来自本地,那么值为LOCAL。如果是第一次加载网络图片,那么必然是远程获取图片,那么值为REMOTE。

  • isFirstResource

是否是第一次加载资源。

[onResourceReady的返回值]

true:图片显示不出来。

false:图片正常显示。

[onLoadFailed的返回参数]

  • e

加载失败的错误信息。

  • model

load方法的参数值,如果加载的是res里的资源图片,model就是Integer,如果加载的是url,那么model就是url。

model的类型是Object的,所以model就是加载数据的对象。

  • target

ImageView本身。

  • isFirstResource

是否是第一次加载资源。

发布了122 篇原创文章 · 获赞 30 · 访问量 7万+

猜你喜欢

转载自blog.csdn.net/qijingwang/article/details/101272226