使用PopupWindow完成各种dialog
2016-01-15 13:58
274 查看
项目地址: https://github.com/caoweiaaa/PopupWindowDialog
PopupWindow是个很强大的控件。首先他可以自定义自己的布局,这一点我们就可以根据自己的想法随意的设置自己的布局,然后创建PopupWindow的时候,我们可以设置它的宽高,显示的时候还没能设置它的显示位置,因此它几乎何以完成所有的弹出Dialog的需求。今天就举几个小例子,其他风格思想都是一样
效果:
PopupWindow是个很强大的控件。首先他可以自定义自己的布局,这一点我们就可以根据自己的想法随意的设置自己的布局,然后创建PopupWindow的时候,我们可以设置它的宽高,显示的时候还没能设置它的显示位置,因此它几乎何以完成所有的弹出Dialog的需求。今天就举几个小例子,其他风格思想都是一样
效果:
控制Gravity可以控制pop的位置 ll_main是本界面的最外层布局
pop1.showAtLocation(ll_main, Gravity.BOTTOM, 0, 0); pop2.showAtLocation(ll_main, Gravity.CENTER, 0, 0); pop3.showAsDropDown(btn_pop3);
创建pop的时候控制它自己的宽和高
new PopupWindow(view, ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.WRAP_CONTENT, true); new PopupWindow(view, screenWidth * 4 / 5, ViewGroup.LayoutParams.WRAP_CONTENT, true); new PopupWindow(popupWindowView, ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.MATCH_PARENT, true);
相关文章推荐
- linux 用户添加root权限
- MIT,Apache 等协议如何理解?
- Docker学习笔记之一
- centos挂载SSD
- Centos6.4安装jdk
- Linux select poll epoll 区别比较
- Linux时间子系统之八:动态时钟框架(CONFIG_NO_HZ、tickless)
- Linux时间子系统之七:定时器的应用--msleep(),hrtimer_nanosleep()
- Linux下nginx编译安装教程和编译参数详解
- Linux时间子系统之六:高精度定时器(HRTIMER)的原理和实现
- Linux时间子系统之五:低分辨率定时器的原理和实现
- Linux时间子系统之四:定时器的引擎:clock_event_device
- Linux时间子系统之三:时间的维护者:timekeeper
- Linux时间子系统之二:表示时间的单位和结构
- Linux时间子系统之一:clock source(时钟源)
- linux中w命令参数详解
- CentOS Linux解决Device eth0 does not seem to be present
- Linux中断(interrupt)子系统之五:软件中断(softIRQ)
- Linux中断(interrupt)子系统之四:驱动程序接口层 & 中断通用逻辑层
- Linux中断(interrupt)子系统之三:中断流控处理层