安卓软键盘无法平移网页视图

9
我正在解决的问题比较复杂,但为了调查目的,我已将测试用例简化如下:
- 单个全屏活动 - 通过编程方式创建的 Web 视图,占据大约一半的水平屏幕空间、90% 的垂直空间,并在 onCreate 调用中通过以下方式添加到根视图中:
``` ViewGroup parent = (ViewGroup) getWindow().getDecorView().getRootView(); parent.addView(myWebView); ```
- 通过 `loadUrl("http://google.com")` 打开 Web 视图以访问 google.com。 - AndroidManifest.xml 具有属性:`"android:windowSoftInputMode="adjustPan"`。
当点击 Google 页面上的搜索框时,键盘弹出,但 Web 视图本身没有像 adjustPan 指示的那样向上移动。主活动还具有本地文本字段,当单击时,整个布局(包括 Web 视图)将向上移动,与预期相符。
这种行为在 Nexus 7 和 Galaxy Nexus 上的 4.2.2 版本中存在。
因此,问题是如何正确应用 windowSoftInputMode 属性 adjustPan 到 Web 视图实例,以便在显示软键盘时,整个 Web 视图都向上移动键盘所占用的垂直空间。
在尝试手动操作 onMeasure 布局之前,我想看看是否有一种一致/更好的方法来处理这个问题。浏览器显然正确处理了这种情况,因此不知道为什么 Web 视图无法处理这种情况。
需要注意的一点是,将 Web 视图全屏或作为单独的活动不是可能的选项,因为现有的架构无法更改。

1
我有完全相同的问题。我不能使用“adjustResize”,因为它会缩小webview并且看起来不好。你有什么解决方案吗?在最后一段中,你提到了“一个事情...要改变”的选项;你能否解释这些选项,以便其他人(包括我)可以使用它们? - Shirish Herwade
http://stackoverflow.com/questions/18765610/android-softkeyboard-hiding-textfield-inside-webview - DropAndTrap
@dizzymonkey 你找到解决方案了吗? - Varun
1个回答

0

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接