温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

Android 输入法键盘和activity页面遮挡问题解决

发布时间:2020-07-24 19:05:03 来源:网络 阅读:575 作者:镜中小白 栏目:移动开发

相信大家在开发时会遇到弹出软键盘后,输入框上移就看不到输入框了,其实只要将Webview放到了ScrollView中,将ScrollView改为LinearLayout问题解决了,不会在弹出软键盘后大幅滚动。不过下面还是详细介绍下软键盘和activity页面遮挡的问题。

 

通常情况下如果我们在一个输入框输入内容,输入法键盘弹出时,activity自动设置高度,相当于在activity向上滚动了添加了输入法键盘的高度。但有时可能淹没当前的输入框,如果希望输入法键盘弹出时不自动向上挤压activity,在activty中设置属性android:windowSoftInputMode="adjustPan",这样输入法可以覆盖Activity显示,如下:

<activityandroid:name="testActivity" 
      android:windowSoftInputMode="adjustPan">


设置属性为android:windowSoftInputMode="adjustResize"即可自动调整高度。

 

属性stateVisible表示默认显示输入法键盘,其他属性见:android:windowSoftInputMode

 

adjustPan同样存在问题,即可能需要关闭软键盘,定位被挡住的输入框,我希望的是介于adjustPanadjustResize之间的解决方案,即软键盘会对activity有一定挤压,但是焦点所在输入框始终会显示在屏幕上,有会的朋友欢迎留言分享,个人觉得可能的解决方案是new一个LinearLayout,重写其中的

protected voidonSizeChanged(int w, int h, int oldw, int oldh)


当然,开发完APP也是需要进行全方位的检测:www.ineice.com


向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI