Android中自定义弹出PopupWindow后返回按键失效的问题解决 随笔

PopupWindow出现之后,默认的是所有的操作都无效的,除了HOME键。而且是可以操作后面的界面的。
想要锁定后面的界面,很简单,只需要让PopupWindow是focusable的:
popupWindow.setFocusable(true);  

SRE实战 互联网时代守护先锋,助力企业售后服务体系运筹帷幄!一键直达领取阿里云限量特价优惠。

但是这样不能实现点击屏幕其他部分使其消失,返回键也不行。
这时候要给popupWindow设置一个一个BackgroundDrawable,如果你已经定义好布局,怕破坏掉样式,只需要设置一个空的Drawable即可:
popupWindow.setBackgroundDrawable(new PaintDrawable()); 
这样,点击屏幕其他部分和返回键都能实现使其消失的功能了。

扫码关注我们
微信号:SRE实战
拒绝背锅 运筹帷幄