手抄报 安全手抄报 手抄报内容 手抄报图片 英语手抄报 清明节手抄报 节约用水手抄报

Android开发之PopupWindow实现AlertDialog效果

时间:2024-10-23 14:05:09

PopupWindow属于android.widget包下的一个控件,该控件的使用方式不同别的控件,无法在布局文件中直接使用,可以在代码中动态使用,动态创建PopupWindow,查看文档TeachCourse发现有多种构造方法,根据参数创建各式各样的PopupWindow。

Android开发之PopupWindow实现AlertDialog效果

工具/原料

Android开发工具:Android Studio或Eclipse

Android测试工具:虚拟设备或测试手机

一、PopupWindow实例详细介绍

1、一个PopupWindow对象可以用于展示随意的view,是一个浮动的容器位于当前activity的顶部,可以设置AlertDialog弹窗效果,可以参考钊林IT另外一篇 文章《自定义弹窗 VS AlertDialog分享弹窗》。设计一个底部弹窗窗口Demo,选择绑定银行卡开户行,有点像微信绑定银行卡窗口,选择开户行后,弹窗消失,继续下一步操作。

Android开发之PopupWindow实现AlertDialog效果

2、如何创建PopupWindow对象?创建PopupWindow有多种方式,Ctrl+鼠标左键,查看PopupWindow源码,最后一种构造方法,指定PopupWindow布局,默认窗口的宽/高以及是否获取焦点属性,如下图:

Android开发之PopupWindow实现AlertDialog效果

3、如何调整PopupWindow窗口位置?PopupWindow提供的showAtLocation(View parent,int gravity,int x,int y)方法,方便快速设置窗相对于当前窗口位置:parent,依附的父容器视图View;gravity,指定Gravity.LEFT,Gravity.TOP,Gravity.RIGHT,Gravity.BOTTOM,弹窗的位置;X或Y,弹窗相对X轴或Y轴的偏移量

Android开发之PopupWindow实现AlertDialog效果

4、如何PopupWindow窗口动画?使用setAnimationStyle(int animationStyle);animationStyle:PopupWindow出现和消失的动画样式,-1表示默认动画样式,0表示木有动画,或者引用一个自定义动画资源

5、这里引用了一个自定义滑动资源,设置窗体进入动画android:windowEnterAnimation和窗体退出动画android:windowExitAnimation,关于动画的详细介绍,可以参考TeachCourse另一篇文章《Android代码绘制虚线、圆角、渐变和阴影效果图》

Android开发之PopupWindow实现AlertDialog效果
Android开发之PopupWindow实现AlertDialog效果

6、如何PopupWindow布局?在知识点1中的popupWindow_view定义的布局,这里展示银行开卡行名称,添加了ListView控件,关联的数据items数组,关键代码:

Android开发之PopupWindow实现AlertDialog效果
© 手抄报圈