Android使用Glide加载View背景图片

一般常用Glide加载图片到ImageView上,如何加载到View及Layout的背景上呢?

Glide 4 及以上

public static void loadViewBackground(String url, final View view) {
    SimpleTarget<Drawable> simpleTarget = new SimpleTarget<Drawable>() {
        @Override
        public void onResourceReady(@NonNull Drawable resource, Transition<? super Drawable> transition) {
            if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLY_BEAN) {
                view.setBackground(resource);
            }
        }
    };
    GlideApp.with(view.getContext()).load(url).into(simpleTarget);
}

常用方式

第一种方式:

Glide.with(context)
    .load(url)
    .asBitmap()
    .into(new SimpleTarget<Bitmap>(180, 180) { //图片宽高
        @Override
        public void onResourceReady(Bitmap resource, GlideAnimation<? super Bitmap> glideAnimation) {
        Drawable drawable = new BitmapDrawable(resource);
            if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLY_BEAN) {
                layout.setBackground(drawable); //设置背景
            }
        }
    });

该方式按照设置的宽高去截取图片,再去加载到控件背景上,有时会导致图片显示不全

第二种方式:

Glide.with(context)
    .load(url)
    .into(new ViewTarget<View, GlideDrawable>(layout) { //括号里为需要加载的控件
        @Override
        public void onResourceReady(GlideDrawable resource, GlideAnimation<? super GlideDrawable> glideAnimation) {
            this.view.setBackground(resource.getCurrent());
        }
    });

该方式则完美加载图片

版权声明:
作者:Joe.Ye
链接:https://www.appblog.cn/index.php/2023/02/26/android-use-glide-to-load-view-background-image/
来源:APP全栈技术分享
文章版权归作者所有,未经允许请勿转载。

THE END
分享
二维码
打赏
海报
Android使用Glide加载View背景图片
一般常用Glide加载图片到ImageView上,如何加载到View及Layout的背景上呢? Glide 4 及以上 public static void loadViewBackground(String url, final View ……
<<上一篇
下一篇>>
文章目录
关闭
目 录