最近比较偷懒哈,已经有一段时间没有更新分享了,一个原因也是最近需要接触前端的一些知识,另外也是项目比较忙,周末事情也是比较多和杂,也就没有多少精力来更新分享了。言归正传,今天我们来分享Android的一个小知识点PopupWinow,这个小伙伴们在项目中应该是比较经常用到的。显示出来是很简单的,今天重点是想分享下PopupWinow主要的两种显示位置的方式,在我们项目中残忍的UI要求位置灵活一点,还是费了一点时间折腾的,今天就和大家分享下这个折腾的过程。
PopupWinow主要有下面几种构造函数:
showAsDropDown(View anchor):相对某个控件的位置(正左下方),无偏移
showAsDropDown(View anchor, int xoff, int yoff):相对某个控件的位置,有偏移
showAtLocation(View parent, int gravity, int x, int y):相对于父控件的位置(例如正中央Gravity.CENTER,下方Gravity.BOTTOM等),可以设置偏移或无偏移
简单写了个Demo,下面我们分别看下这两种方式的显示效果。
showAsDropDown这种方式主要用来将popupWindow显示在某个view的周围,也就是以某个view为锚点,可以控制显示的相对偏移量。
showAsDropDown.png
showAtLocation这种方式就比较自由点,可以控制popup