繁体   English   中英

如何使用Glide Library逐张加载图像?

[英]How to load image by image using Glide Library?

我有一个应用程序,其中包含使用滑行库通过链接显示的一系列图像,我的应用程序需要很长时间才能加载所有图像,因此可以逐个图像(一个一个)地加载图像。

Glide.with(context)
    .load(imageId.get(position))
    .diskCacheStrategy(DiskCacheStrategy.ALL)
    .priority(Priority.HIGH)
    .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) {
            progressBar.setVisibility(View.GONE);
            return false;
        }
    })
    .into(holder.CategoryImage);

尝试这个

Glide.with(context)
        .load(imageId.get(position))
        .diskCacheStrategy(DiskCacheStrategy.ALL)
        .priority(Priority.HIGH)
        .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) {
                progressBar.setVisibility(View.GONE);
                return false;
            }
        })
        .thumbnail(0.1f) // this will do the trick
        .into(holder.CategoryImage);

如果它不起作用,请尝试这种方式,

Glide.with(context)
        .load(imageId.get(position))
        .diskCacheStrategy(DiskCacheStrategy.ALL)
        .priority(Priority.HIGH)
        .override(100,100)
        .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) {
                progressBar.setVisibility(View.GONE);
                Glide.with(context).load(imageId.get(position))
                    .diskCacheStrategy(DiskCacheStrategy.ALL)
                    .priority(Priority.HIGH)
                    .into(holder.CategoryImage);
                return false;
            }
        })
        .into(holder.CategoryImage);

使用此代码:

 Glide.with(this)
            .load(sharePref.getUserImage())
            .asBitmap()
            //.centerCrop()
            .placeholder(R.drawable.ic_account_circle_black_48dp)     // .placeholder(R.drawable.user)
            .into(new BitmapImageViewTarget(user_Image) {
                @Override
                protected void setResource(Bitmap resource) {
                    RoundedBitmapDrawable circularBitmapDrawable =
                            RoundedBitmapDrawableFactory.create(getResources(), resource);
                    circularBitmapDrawable.setCircular(true);
                    user_Image.setImageDrawable(circularBitmapDrawable);
                }
            });

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM