【Android】Glide结合高斯模糊(毛玻璃效果)

作者: 李玉凯 分类: Android 发布时间: 2019-07-09 15:09

效果图如下背景效果

实现步骤如下

一、添加依赖库

//图片加载
compile 'com.github.bumptech.glide:glide:3.7.0'
//高斯模糊
compile 'jp.wasabeef:glide-transformations:2.0.1'

二、代码实现

Glide.with(this)
        .load(R.drawable.bj)
        .bitmapTransform(new BlurTransformation(this, 30))
        .into(new ViewTarget<ImageView, GlideDrawable>(mImBg) {
            @SuppressLint("ResourceAsColor")
            @Override
            public void onResourceReady(
                    GlideDrawable resource, GlideAnimation<? super GlideDrawable> glideAnimation) {
                //拿到glide的Drawable
                Drawable drawable = resource.getCurrent();
                //使用适配类进行包装
                drawable = DrawableCompat.wrap(drawable);
                //设置着色的效果和颜色,蒙版模式
                drawable.setColorFilter(Color.GRAY, PorterDuff.Mode.MULTIPLY);
                //设置给ImageView
                mImBg.setImageDrawable(drawable);
            }
        });

注:

// 30:模糊度、3:图片缩放3倍后再进行模糊
.bitmapTransform(new BlurTransformation(this, 30, 3))
//设置着色的效果和颜色,蒙版模式
drawable.setColorFilter(Color.GRAY, PorterDuff.Mode.MULTIPLY);

以上两行不能少

如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!

发表评论

邮箱地址不会被公开。 必填项已用*标注

18 − 9 =