软键盘挡住webview输入框
程序员文章站
2022-04-20 09:00:48
...
和很多人做项目一样,遇到了在WebView加载的页面内底部有输入框被软键盘挡住的问题。资料查了一堆,最简单的一种解决方法是在AndroidManifest文件中对activity设置:android:windowSoftInputMode
的值adjustPan
或者adjustResize
即可,像这样:
<activity
android:name=".MainActivity"
android:windowSoftInputMode="adjustPan" >
...
</activity>
adjustPan:把整个界面向上平移,使输入框露出,不会改变界面的布局;
adjustResize:重新计算弹出软键盘之后的界面大小,相当于是用更少的界面区域去显示内容,输入框一般自然也就在内了。
这个方法适用页面非WebView加载的情况,当页面有WebView的时候,adjustPan和adjustResize的作用受到了一定的限制,如图:
这种情况,我看网上很多朋友都没有写明该怎么解决,后面再一位老哥的简书上了解到这个BUG叫"issue 5497",也看到了解决方法,一个神奇的类AndroidBug5497Workaround
使用起来很简单:
1、把这个类拷贝到你的工程里;2、在你有问题的Activity里加一句代码:AcdroidBug5497Workround.assistActivity(this);
更详细的介绍可以查看这位老哥的简书:http://www.jianshu.com/p/306482e17080
下一篇: 软键盘挡住WebView中输入框解决方法
推荐阅读