如果PopupWindow在弹出的时候,需要按返回键消失,默认情况下是不响应的,需要使用setBackgroundDrawable函数设置。而我的布局文件已经设置了透明,不需要在设置背景图片了,因此想到将背景图片设置为空。
mPopupWindow.setBackgroundDrawable(null);
但这样是不行的,依然无法设置返回键。
虽然可以用下面这个方法设置:
mPopupWindow.setBackgroundDrawable(new BitmapDrawable());
但是,BitmapDrawable()这个方法已经过时。
经过一番摸索,终于得出如下方法:
mPopupWindow.setBackgroundDrawable(new BitmapDrawable(getResources(), Bitmap.createBitmap(dm.widthPixels, dm.heightPixels, Bitmap.Config.ALPHA_8)));
其中,dm.widthPixels和dm.heightPixels是popupwindow的宽度和高度。满屏显示的话,就是屏幕的宽度和高度了。