Android高斯模糊(毛玻璃效果)蒙层库
ShapeBlurView
ShapeBlurView
库是一个高斯模糊(毛玻璃效果)蒙层库。Like iOS UIVisualEffectView
不知大家做需求的时候是否有这样的效果要求:
需求示例
大家熟悉的Android常用图片加载库,比如Glide 可以对图片进行毛玻璃效果的加载(实现不展开说了)
但是都是对整个要加载的图片进行高斯模糊效果,对应局部这种比较难处理,这个库就能实现这样的效果。
当然,你对整个图片盖一层,也能达到Glide高斯模糊加载的效果。
先看看效果:
效果示例
效果示例
网上有其他大神开源的库,但都有些美中不足。没有边框、没有切圆角等功能。
此ShapeBlurView
库支持矩形、圆形、椭圆;边框、边框自定义颜色、自定义边框粗细;矩形时支持切圆角
并且可以支持对4个角分别切圆角。
使用步骤
1、在添加maven地址的地方添加:
repositories {maven { url 'https://jitpack.io' }}
2、在需要使用的gradle文件添加依赖:
implementation 'com.github.centerzx:ShapeBlurView:1.0.5'
implementation 'androidx.appcompat:appcompat:***'
appcompat:***根据你自己的版本添加
使用说明
(1)Xml布局文件中引用
<net.center.blurview.ShapeBlurViewandroid:id="@+id/blurview"android:layout_width="300dp"android:layout_height="100dp" />
默认效果代码如上,当然width、height根据需求而定
(2)可用属性
<attr format="dimension" name="blur_radius"/><attr format="float" name="blur_down_sample"/><attr format="color" name="blur_overlay_color"/><attr format="dimension" name="blur_corner_radius"/><attr format="dimension" name="blur_corner_radius_top_left"/><attr format="dimension" name="blur_corner_radius_top_right"/><attr format="dimension" name="blur_corner_radius_bottom_left"/><attr format="dimension" name="blur_corner_radius_bottom_right"/><attr format="dimension" name="blur_border_width"/><attr format="color" name="blur_border_color"/><attr name="blur_mode"><enum name="rectangle" value="0"/><enum name="circle" value="1"/><enum name="oval" value="2"/></attr>blur_radius:高斯模糊半径,值越大越模糊,0<r<=25
blur_down_sample:采样参数
blur_overlay_color:毛玻璃覆盖颜色
blur_corner_radius:矩形时圆角半径(4个角一样),其他几个corner属性大家应该能看懂
blur_border_width:边框线条宽度
blur_border_color:边框线条颜色
blur_mode:样式,rectangle:矩形;circle:圆形;oval:椭圆
(3)代码中对熟悉进行设置
blurview?.refreshView(ShapeBlurView.build().setBlurMode(BlurMode.MODE_RECTANGLE).setCornerRadius(BlurCorner.TOP_LEFT, 50f).setBorderWidth(10f).setBorderColor(R.color.teal_200))
调用类方法refreshView,使用简洁build模式进行值设置,最终只调用一次invalidate()
这样避免传统的setXXX方法里面设置一个值就去调用invalidate()进行重绘
(4)混淆
-keep class android.support.v8.renderscript.** { *; }
-keep class androidx.renderscript.** { *; }
(5)项目开源地址
GitHub地址 https://github.com/centerzx/ShapeBlurView
高斯模糊效果参考RealtimeBlurView
库,感谢:RealtimeBlurView
项目库如有不足和错误的地方,欢迎大家讨论指正!觉得不错,也希望大家帮忙Star下,感谢!
作者:centerzx
链接:https://www.jianshu.com/p/442759a3ccf1
关注我获取更多知识或者投稿
Android高斯模糊(毛玻璃效果)蒙层库相关推荐
- android高仿微信聊天页面,Android 高仿微信语音聊天页面高斯模糊(毛玻璃效果)
目前的应用市场上,使用毛玻璃效果的APP随处可见,比如用过微信语音聊天的人可以发现,语音聊天页面就使用了高斯模糊效果. 先看下效果图: 仔细观察上图,我们可以发现,背景图以用户头像为模板,对其进行了高 ...
- android img标签属性_微信小程序 组件叠加效果(如 Android 中的添加蒙层)
实现的效果如下: 可以看出这是由image组件和text组件叠加到一块组成的蒙层效果. 在小程序中实现这个效果主要用到z-index属性和position属性 z-index的使用必须是双方组件都设置 ...
- android 按钮加上蒙层,Android PopupWindow增加半透明蒙层
本文实例为大家分享了Android PopupWindow增加半透明蒙层的具体代码,供大家参考,具体内容如下 先看效果图: 实现代码: BasePopupWindowWithMask.class pa ...
- android 实时高斯模糊 毛玻璃效果
在找遍了网上所有关于实时高斯模糊的效果,并没有直接现成的例子,所以自己东拼西凑,在加上自己的改动,终于实现出来了 如图: 本示例是在ConvenientBanner这个开源库demo上改的,自己写一个 ...
- Android开发之新手引导蒙层
因为是做公司内网开发,所以也没用到新手引导的这个功能.但是由于每次更新的时候更新内容已经写在上面,内部人员就是不看的情况下要求做了一个引导页.但是最后呢,还没用上.但是找了好久也找到了一个很好用的第一 ...
- android 圆形图片设置蒙层,Android引导蒙层,安卓新手引导图,引导图层,支持椭圆,圆形,矩形多种形状,一行代码快速搞定-Go语言中文社区...
新手引导视图,初次打开页面时显示. 支持圆形,椭圆,矩形等多种图形 提示部分支持图片和文字提示 先看效果图 使用步骤. 使用起来特别简单,只需要把GuideView这个类复制到你的项目中就可以了 pa ...
- 毛玻璃效果在Android的实现
本文已授权「玉刚说」微信公众号独家发布 毛玻璃效果实际上是对原图片的严重劣化,突出朦胧感,一般都是通过图片的缩放+模糊算法来实现,从性能角度考虑,模糊半径不能大于25,所以要更高的模糊效果则需要进行 ...
- Android 10.0 Launcher3双层(抽屉)高斯模糊(毛玻璃)背景功能的实现
1.概述 在进行定制开发的功能需求方面,Launcher3的需求也挺多的,单双层抽屉高斯模糊毛玻璃背景功能也是一个需求功能,最近按照功能需求来开发 双层抽屉高斯模糊毛玻璃效果背景的功能 效果图如图: ...
- android 开源 高斯模糊_Android实现带毛玻璃效果(高斯模糊)背景的Dialog
最近换了工作,由于工作中要使用一些自己以前不是很了解的知识,就没有时间更新博客了. 由于最近做了一些很有意思的小demo,不吐不快,再加上还是认为技术需要沉淀和梳理,所以再次把写博客这件事拾起来. 已 ...
最新文章
- C语言网络编程:多路IO select实现多客户端
- python检查URL是否能正常访问
- springJAR包和配置文件
- 网络安全09_部署Windows XP、Windows Server 2003、Windows server 2008、Windows 7 每个虚拟机各两台(2)
- 磁盘和文件系统管理一
- 关联式容器(map,set,multimap,multiset)
- 企业实战_07_MyCat 搭建Mysql 一主一从复制环境
- “偷师腾讯”,苹果要分游戏这杯羹!| 畅言
- onready怎么加img_用插件VMarker在vue中给图片加标记
- ie6 插入图片img png24 阴影
- 阶段3 3.SpringMVC·_07.SSM整合案例_09.ssm整合之Spring整合MyBatis框架配置事务
- JAVA NP插件,特定的宽度600,插件就不显示
- ios android c跨平台,Unity 使用C/C++ 跨平台终极解决方案(PC,iOS,Android,以及支持C/C++的平台)...
- 2020-09-26-舵机+两相4线步进电机
- SPSS卡方检验结果解读详解
- iOS 中 XML 数据交换格式
- JAVA数字大写金额转换
- xticklabel 显示下划线_[转载]matlab坐标轴属性及标注
- [附源码]java毕业设计哈金院快递驿站管理信息系统
- 电子产品电池使用年限计算
热门文章
- 曝光以租场地名义的新型合同诈骗伎俩
- 迅为iTOP3399开发板QT系统PCIE 4G移植-编译程序
- 爬虫第四篇-爬虫对网站改版快速解决思路
- Win10下E3-1231 V3开启Intel虚拟化技术(vt-x)安装HAXM
- Opencv_11 阈值分割
- 开发Windows Mobile今日插件 -- 内存电量,桌面便笺,桌面记单词(转自hoodlum1980 ( 發發 ) 的技术博客)
- “艺术”与“技术”的碰撞------浅谈“艺工交叉”
- java打开密码pdf,在Java中使用密码解密PDF文档
- 浅谈百度谷歌蜘蛛机器人活动规律
- python初中数学建模培训_初中生数学建模培养