如何建立Glide和OkhttpClient集成

时间:2018-07-26 18:48:54

标签: android android-glide okhttp

在recyclerView中查看项目时,我已经在glide和okhttp之间进行了集成,并且所有项目都具有相同的图像,我不为什么?

OkHttpUrlLoader.Factory factory = new OkHttpUrlLoader.Factory(client);
Glide.get(context).getRegistry().replace(GlideUrl.class, InputStream.class, factory);
RequestOptions options = new RequestOptions();
options.placeholder(placeholder)
       .diskCacheStrategy(DiskCacheStrategy.NONE)
       .error(placeholder)
       .transform(new CircleCrop());

Glide.with(context).load(UrlsManager.IMG_URL).listener(new RequestListener<Drawable>() {
    @Override
    public boolean onLoadFailed(@Nullable GlideException e, Object model,
                                Target<Drawable> target, boolean isFirstResource) {
        Glide.get(context).getRegistry().replace(GlideUrl.class, InputStream.class, new OkHttpUrlLoader.Factory());
        return false;
    }

    @Override
    public boolean onResourceReady(Drawable resource, Object model, Target<Drawable> target,
                                           DataSource dataSource, boolean isFirstResource) {
         Glide.get(context).getRegistry().replace(GlideUrl.class, InputStream.class, new OkHttpUrlLoader.Factory());
                return false;
            }
        }).apply(options).into(holder.imageView);

0 个答案:

没有答案