1.记得要设置背景,否则将无法点击外面消失
2.PopupWindow是没有使用PhoneWindow的,直接WindowManager.addView(),窗口类型为子窗口。
3.PopupWindow有默认的Transition动画,也可以通过setAnimation方法闯入style id设置窗口动画
4.PopupWindow是通过获取anchorView在窗口坐标系的位置,结合offsetX/Y和gravity,确定PopupWindow的LayoutParam.x/y,因为PopupWindow添加的是子窗口,所以WindowManager.LayoutParam.x/y中的值是相对于父窗口坐标系的,而不是屏幕坐标系。
5.PopWindow在选择显示位置时,还会考虑PopupWindow的尺寸和父窗口尺寸,保证PopupWindow完全显示在父窗口内的前提下,尽量满足gravity,offset的要求