Android开发之PopupWindow实现AlertDialog效果

2025-11-28 07:58:39

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效果

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢