Android基础控件——PopupWindow模仿ios底部弹窗
Posted 张丽心
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Android基础控件——PopupWindow模仿ios底部弹窗相关的知识,希望对你有一定的参考价值。
在H5火热的时代,许多框架都出了底部弹窗的控件,在H5被称为弹出菜单ActionSheet,今天我们也来模仿一个ios的底部弹窗,取材于苹果QQ的选择头像功能
废话不多说,先来个今天要实现的效果图
整个PopupWindow的开启代码
步骤分析:
- PopupWindow的布局
- PopupWindow的创建
- PopupWindow添加动画效果
- PopupWindow设置背景阴影
- PopupWindow监听点击事件
- 获取NavigationBar的高度
PopupWindow的布局:在Layout中,设计我们需要的布局
其效果是:
PopupWindow的创建:这个创建与我们普通的控件创建方法是一样的
PopupWindow添加动画效果:我们创建一个anim文件夹,创建我们的out和in动画效果,然后在style添加我们的动画
PopupWindow设置背景阴影:弹窗打开时设置透明度为0.5,弹窗消失时设置透明度为1
PopupWindow监听点击事件:监听我们PopupWindow里面控件的点击事件
获取NavigationBar的高度:这里需要适配有些手机没有NavigationBar有些手机有,这里以存在NavigationBar来演示
对存在NavigationBar的手机上,设置其PopupWindow的出现位置
对没有NavigationBar的手机上,设置其PopupWindow的出现位置
Github:https://github.com/androidHensen/IOSPopupWindow
以上是关于Android基础控件——PopupWindow模仿ios底部弹窗的主要内容,如果未能解决你的问题,请参考以下文章
Android 多个控件绑定同一个PopupWindow,当点击popupWindow中的控件时获取到触发popWindow控件的文本
Android开发,如何让PopupWindow弹出时外部控件不可点击?
Android原生控件 -- PopupWindow(选项菜单)