【Android】Glide结合高斯模糊(毛玻璃效果)
效果图如下背景效果
实现步骤如下
一、添加依赖库
//图片加载 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);
以上两行不能少