全网独一份的对话框弹出样式

简介: 全网独一份的对话框弹出样式

最近实现了一个从点击处弹出的对话框,最终效果如下


image.png


1. 接招


实现对话框功能可选择的技术有 Dialog、PopupWindow、Activity。它们都支持自定义弹出和消失动画。它们都能实现自定义动画。


WindowAnimation Transition ShareElement Transition
Dialog 支持 不支持 不支持
PopupWindow 支持 支持 不支持
Activity 支持 支持 支持

640.png


WindowAnimation动画必须要在styles.xml中定义,不能通过代码动态设置windowEnterAnimation、windowExitAnimation。意味着windowAnimation一旦设置好了 动画是固定不变的,显然无法满足从点击处做弹出动画的功能。排除Dialog。Activity同时支持过渡动画和共享元素过渡动画。经过一番尝试,发现虽然Activity支持丰富 的过渡动画,但是并不适合完成该场景的功能,最终决定采用PopupWindow实现该功能。


2. 拆招


该动画的特征是:从手指点击处做放大动画同时将对话框的中心点平移到屏幕中心。核心代码如下

640.png

3. 解招


最终代码

640.png


4. 获取完整源码


关注微信公众号"字节小站",回复"对话框",获取完整源码。

相关文章
|
小程序 API
微信小程序如何点击按钮,复制文本到粘贴板
微信小程序如何点击按钮,复制文本到粘贴板
微信小程序如何点击按钮,复制文本到粘贴板
|
2月前
Axure 选中同意复选框后,改变登录按钮的颜色
Axure 选中同意复选框后,改变登录按钮的颜色
23 0
若依如何创建二级页面菜单,点击目录后,右侧空白的悬浮空白的内容,点击系统管理的菜单管理,上级菜单点击主类木有个小三角,选择我们之前创建的主类目
若依如何创建二级页面菜单,点击目录后,右侧空白的悬浮空白的内容,点击系统管理的菜单管理,上级菜单点击主类木有个小三角,选择我们之前创建的主类目
若依颜色失效怎么办?F12刷新样式不管用,回到控制台,重新点击项目链接就好了
若依颜色失效怎么办?F12刷新样式不管用,回到控制台,重新点击项目链接就好了
|
5月前
|
Android开发
热点共享蓝条下压,导致页面底部按钮显示不全的完美解决方案
热点共享蓝条下压,导致页面底部按钮显示不全的完美解决方案
27 0
|
5月前
|
移动开发
移动端H5不能自由选中文本进行复制的问题
移动端H5不能自由选中文本进行复制的问题
142 0
|
JavaScript 前端开发
右下角点击页面回顶部组件
右下角点击页面回顶部组件
59 1
右下角点击页面回顶部组件
如何实现“点击回到顶部”的功能?
如何实现“点击回到顶部”的功能?
108 0
|
前端开发 JavaScript
漏刻有时后台左侧菜单默认隐藏的解决方案
漏刻有时后台左侧菜单默认隐藏的解决方案
65 0