导航:首页 > 操作系统 > android背景毛玻璃

android背景毛玻璃

发布时间:2025-01-07 20:34:03

A. 谁说Android没有好的对话框

安卓自5.0后自带的对话框都是沉浸式体验,用户体验极佳。对话框的效果是可以自己定义的,圆角、背景透明,毛玻璃,过度动画,如果想要完全可以和IOS的效果一样,但是就不符合Android的material设计规范了。下面是两种效果的对话框

  1. 自定义圆角对话框 2.material效果的对话框

B. Android上如何做出毛玻璃模糊的效果

上图展示了一种很典型的视觉效果——文字的背景不再是固定的,而是将底层的相应区域模糊化,好似盖了一层毛玻璃。

其原理也很简单,分为三步走:

里面涉及到的技术点有两个:

ViewTreeObserver里面有一个监听器为OnPreDrawListener

当它执行时,布局文件经过了 measured laid out displayed ,即将被绘制到屏幕,此时调用它的 getDrawingCache() 方法可以获得其Bitmap。完整方法如下:

方案有两种:

两种方案都可以进行对Bitmap对象的模糊处理,但当模糊半径增大时,StackBlur能够保持较好的性能,且不受Renderscript半径25px的限制。

在GitHub项目有一个项目 blurring ,其实现了StackBlur算法的Java实现版FastBlur,并给出两种方案效率对比demo。经过测试,

看起来,Renderscript的性能更好,应该是Android上对Renderscript做了优化。尽管如此,考虑到Android中渲染一帧的时间应该不超过16ms(60fps),这样的性能并不友好。 blurring 作者想出了另外一种思路:

这时候,效率提升非常明显:

生成的模糊图片当然有所不同,但是都是模糊背景,所以对用户而言没有太大差别。

好了,至此Android上制作毛玻璃背景模糊效果的技术都确定了。

我在 blurring 基础上做了封装,接口如下:

相对应类有两个:

阅读全文

与android背景毛玻璃相关的资料

热点内容
程序员的工资是涨的吗 浏览:811
视频存储服务器可以干什么 浏览:461
创建文件夹安装失败怎么回事 浏览:830
程序员高考隔了几年 浏览:820
云服务器是哪一层 浏览:20
jit编译器的jit什么意思 浏览:328
我想清理手机中空白文件夹 浏览:974
电脑e盘文件夹删不掉怎么办 浏览:605
外圆凹圆弧编程 浏览:459
html5编程题 浏览:837
干燥机制冷压缩机一开就跳动 浏览:386
吉林压缩空气流量监测 浏览:616
根据地址获取经纬度php 浏览:10
小天才app的应用中心有什么应用 浏览:768
java代码整理 浏览:260
安卓单个胎压怎么配对 浏览:627
linux将文件清空 浏览:476
一套前端编译平台 浏览:598
安卓9x用什么框架 浏览:72
万用表怎样量压缩机漏电 浏览:548