Glide 加载圆角图片,解决多次刷新周围出现黑边问题

Posted 徐昊Xiho

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Glide 加载圆角图片,解决多次刷新周围出现黑边问题相关的知识,希望对你有一定的参考价值。

现象:

使用 Glide 自带的

.transform(new RoundedCorners(15)).into(iv);

去加载圆角图片,并且设置了占位图,第一次加载并没有什么问题,当多次下拉刷新时,就会出现圆角周围出现黑边的现象,Glide 加载代码:

    /**
     * 加载圆角图片
     *
     * @param context  context
     * @param iv       imageView
     * @param url      图片地址
     * @param emptyImg 默认展位图
     */
    public static void loadRoundImage(Context context, ImageView iv, String url, int emptyImg) 
        if (!TextUtils.isEmpty(url)) 
            GlideApp.with(context)
                    .load(url)
                    .error(emptyImg)
                    .placeholder(iv.getDrawable())
                     .diskCacheStrategy(DiskCacheStrategy.ALL)
                    .transition(new DrawableTransitionOptions().crossFade())
                    .transform(new RoundedCorners(15)).into(iv);
         else 
            loadRoundImage(context, iv, emptyImg, emptyImg);
        
    

黑边截图:

看,右下角那张图片四个角出现了黑边,起初以为是 Glide 加载图片默认缓存的原因,后来跳过缓存还是出现了黑边现象,Adapter 在加载图片的时候也设置了 tag,然后判断 tag 等等都没用。

最终方案:

很简单,把占位图去掉就OK 了。

.placeholder(iv.getDrawable())

以上是关于Glide 加载圆角图片,解决多次刷新周围出现黑边问题的主要内容,如果未能解决你的问题,请参考以下文章

Glide加载圆角图片的方法

使用Glide加载圆角图片

Android关于Glide的使用(高斯模糊加载监听圆角图片)

Android关于Glide的使用(高斯模糊加载监听圆角图片)

Glide-图片预处理(圆角,高斯模糊等)

Glide的加载图片的帮助类,用来把图片圆角或者改成圆形图片