Android 开发中经常用到popupwindow,因此总结一下我最经常最简单的使用方法。
第一步, 创建View
View view = LayoutInflater.from(mContext).inflate(R.layout.mypopupwindow, null);
第二步,创建PopupWindow对象
PopupWindow pop = new PopupWindow(view, LayoutParams.MATCH_PARENT, LayoutParams.WARP_CONTENT, true);
第三步,设置popupwindow属性
//设置pop获取焦点
pop.setFocuable(true);
//点击pop外,dismiss
pop.setOutsideTouchable(true);
//设置背景,不设置无法消除
pop.setBackgroundDrawable(#cccccccc);
//监听pop隐藏
pop.setOnDismissListener(new DismissListener{
});
第四步,设置popupwindow的显示方式
popupwindow的显示方式有三种,根据项目情况来挑选使用哪种方式。
1、showAsDropDown(View anchor):相对某个控件的位置(正左下方),无偏移
2、showAsDropDown(View anchor, int xoff, int yoff):相对某个控件的位置,有偏移
3、showAtLocation(View parent, int gravity, int x, int y):相对于父控件的位置(例如正中央Gravity.CENTER,下方Gravity.BOTTOM等),可以设置偏移或无偏移