天天看点

Android PopupWindow 与 软键盘 的遮挡问题解决

PopupWindow含有输入框时,点击输入框,软键盘可能会挡住PopupWindow,而我们希望的是软键盘能够把PopupWindow给顶上去。

开始在网上查了不少资料,都没有一个能解决我的问题,于是自己动手多试了几个设置,误打误撞,把问题解决了。

popupWindow.setBackgroundDrawable(new BitmapDrawable());
popupWindow.setFocusable(true);
popupWindow.setSoftInputMode(PopupWindow.INPUT_METHOD_NEEDED);
popupWindow.setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_ADJUST_RESIZE);
popupWindow.showAtLocation(parent, Gravity.BOTTOM, 0, 0);
           

这里说明一下,主要是设置

popupWindow.setSoftInputMode(PopupWindow.INPUT_METHOD_NEEDED);

popupWindow.setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_ADJUST_RESIZE);

这两句,而且顺序不能反,如果反过来就没效果了。

Android PopupWindow 与 软键盘 的遮挡问题解决