软键盘遮挡PopupWindow

本文介绍了一种解决PopupWindow中输入框被软键盘遮挡的方法,通过特定顺序设置PopupWindow的软键盘模式,使得软键盘弹出时能够自动调整PopupWindow的位置,避免遮挡现象。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

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

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

  1. popupWindow.setBackgroundDrawable(new BitmapDrawable());

  2. popupWindow.setFocusable(true);

  3. popupWindow.setSoftInputMode(PopupWindow.INPUT_METHOD_NEEDED);

  4. popupWindow.setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_ADJUST_RESIZE);

  5. popupWindow.showAtLocation(parent, Gravity.BOTTOM, 0, 0);


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

popupWindow.setSoftInputMode(PopupWindow.INPUT_METHOD_NEEDED);

popupWindow.setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_ADJUST_RESIZE);

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

 

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值