在popupWindow中,我们能实现的方法有许多,今天我就来简单的总结一下
1. 显示方法
showAsDropDown(anchor); //以触发弹出窗的view为基准,出现在view的正下方,弹出的pop_view左上角正对view的左下角 偏移量默认为0,0
showAsDropDown(anchor, xoff, yoff); //有参数的话,就是view的左下角进行偏移,xoff正的向右,负的向左. yoff是正的向下,负的向上
showAtLocation(parent, gravity, x, y); //parent:传你当前Layout的id; gravity:Gravity.BOTTOM(以屏幕左下角为参照) 偏移量会以它为基准点 当x y
为0,0是出现在底部居中
showAtLocation(View parent, int gravity, int x, int y) //同上
2.setAnimationStyle(int animationStyle) //设置动作
setBackgroundDrawable(Drawable background) //设置背景
setFocusable(boolean focusable) //当设置为false时,即使设置的背景不为空时,点击外部也不能消失popupWindow,只能由dismiss()消失,
但是外面的View的事件还是可以触发,back键也可以顺利dismiss掉。当设置为popuWindow.setFocusable(true);
的时候,加上下面两行设置背景代码,点击外面和Back键才会消失。
setOutsideTouchable(boolean touchable) //点击外部消失popupWindow