图片圆角+高斯模糊实现

glide可以实现圆角和高斯模糊,非常好用;实现为

MultiTransformation multi = new MultiTransformation(
        new BlurTransformation(55),
        new RoundedCornersTransformation(15, 0, RoundedCornersTransformation.CornerType.ALL));
Glide.with(getContext()).load(Url)
                    .apply(RequestOptions.bitmapTransform(multi))
                    .into(view);

但是很多时候图片需要

android:scaleType="centerCrop" 那么圆角就失效了, 不用的话图片又无法充满。
解决思路:将圆角和高斯模糊分开, 自己的图片只实现圆角,让一张纯色图片来实现圆角和高斯模糊来盖在自己图片上, 模糊度调好就可以实现想要的功能。
我的方法是纯色白色图片或者写一个纯色白色shape(如下)来覆盖,另外覆盖的图片要加上android:scaleType="fitXY" 反正是纯色的有没有拉伸都没关系
<shape xmlns:android="http://schemas.android.com/apk/res/android">

    <solid android:color="@color/white"/>

    <corners android:radius="5dp"/>

</shape>

让覆盖的图片来实现(圆角+模糊)

MultiTransformation multi = new MultiTransformation(
        new BlurTransformation(55),
        new RoundedCornersTransformation(15, 0, RoundedCornersTransformation.CornerType.ALL));
Glide.with(getContext()).load(Url)
                    .apply(RequestOptions.bitmapTransform(multi))
                    .into(view);

自己的图片只实现(圆角)

Glide.with(getContext()).load(Url)
                .apply(PublicUtils.setOptions(getContext(),5))
                .into(view);

两个Imageview写在一个相对布局中,覆盖的图片一定要在上面。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值