Android webview键盘覆盖输入

标签 android css cordova android-softkeyboard adjustpan

我的 android 应用程序的预期效果是有一个带有输入框和内容的 webview。当用户点击键盘时,键盘会向上插入输入框,但不会调整主要内容的大小,只是覆盖在其上面,如下图所示。

enter image description here

我遇到的问题是键盘盖住了输入框,没有把它推上去。

目前这是一个 cordova android 应用程序。在 list 中,我已经配置

 <activity android:configChanges="orientation|keyboardHidden|keyboard|screenSize|locale" android:label="@string/activity_name" android:launchMode="singleInstance" android:name="GigJam" android:theme="@android:style/Theme.DeviceDefault.NoActionBar" android:windowSoftInputMode="adjustPan">

同样在 config.xml 中:

   <preference name="Fullscreen" value="false" />

我使用 android:windowSoftInputMode="adjustPan"来防止屏幕调整大小,这正是我想要的,因为我不希望内容被压扁。我还尝试将输入框的 css 配置为固定和绝对的(基本上绑定(bind)到 webview 的底部。

据我了解,当键盘从输入框中的编辑中弹出时,它也会将输入框向上推,因为输入框被限制在 webview 上,而 webview 也会被向上推。

任何建议表示赞赏, 谢谢,

最佳答案

Android 有一个我监听的键盘事件。当显示/隐藏被触发时,我捕获 Activity 的输入组件,并根据键盘高度的大小改变 y 轴上的框,这可以从监听器中的事件中获取。当节目被触发时,我变回原形。

注意:需要为android:windowSoftInputMode禁用调整大小并设置为“adjustPan”

关于Android webview键盘覆盖输入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39627268/

相关文章:

Android 回合制多人游戏 - 如何在屏幕关闭时获取比赛更新?

javascript - IF 在 each() 内部不起作用

html - 删除&lt;input type =“image”>周围的多余空白

javascript - 省略号不起作用

cordova - 用于调试和发布的 Apache Cordova : use different settings in config. xml

ios - 我需要iPhone Developer许可证才能在ios模拟器中运行cordova/phonegap吗?

android - 按下 "down"(隐藏键盘)按钮时清除 TextView 焦点

android - 使用 Android WebView 加载带有本地资源(图像、javascript)的外部 HTML?

javascript - 使用 Cordova Camera Plugin 选取的图像绘制 Canvas

android - 混淆器异常 java.io.IOException : Duplicate zip entry