我知道这里有很多关于android中虚拟键盘的信息,但是我似乎不知道如何解决我的问题。
对于那些不熟悉AdjustPan
和AdjustResize
的人,您可以在这里查看他们是什么/做什么-Difference between adjustResize and adjustPan in android?
我试图实现的是AdjustPan
结果,其中我的webview没有调整大小,而是滚动到输入框,因为我有提交/取消按钮position:absolute
在屏幕底部。当我使用AdjustPan
设置时,键盘会打开,但会覆盖我的输入,不会将webview滚动到输入。
另一方面,当我使用AdjustResize
选项时,页脚的position:absolute
按钮覆盖了最后几个输入,因为有相当多的内容可以容纳一半的屏幕大小。
目前我的活动是这样的
<activity android:configChanges="orientation|keyboardHidden|keyboard|screenSize|locale" android:label="@string/activity_name" android:launchMode="singleTop" android:name="MainActivity" android:screenOrientation="portrait" android:theme="@android:style/Theme.Black.NoTitleBar" android:windowSoftInputMode="adjustResize">
我试图避免使用javascript侦听器解决方案,因为它们看起来有点黑,而且根据我的经验,通常不能提供无缝的外观和感觉。
最佳答案
选项1
添加高度约等于键盘高度的空白布局。将WebVIEW和空白布局移动到滚动视图中,禁用WebVIEW滚动。
选项2
在加载到webview中的web内容上附加一些换行符。