Android软键盘没有平移网页视图

时间:2013-08-08 19:18:14

标签: android webview keyboard textfield ime

我正在解决的原始问题更为复杂,但出于调查目的,我已将测试用例简化为以下内容:

  • 单一全屏活动
  • 以编程方式创建的Web视图占据大约一半的水平屏幕空间,90%的垂直空间,并通过onCreate调用添加到根视图中:

ViewGroup parent = (ViewGroup) getWindow().getDecorView().getRootView(); parent.addView(myWebView);

  • 网络视图通过以下网址打开google.com:

loadUrl("http://google.com")

  • AndroidManifest.xml具有以下属性:

"android:windowSoftInputMode="adjustPan"

当点击谷歌页面上的搜索框时,键盘弹出,但网页视图本身没有向上移动,因为adjustPan指示应该发生。主活动还有一个原生文本字段,单击该字段时将按预期移动整个布局(包括Web视图)。

在Nexus 7和Galaxy Nexus上的行为都出现在4.2.2上。

所以问题是如何将windowSoftInputMode属性adjustPan正确应用于Web视图实例,这样当显示软键盘时,整个Web视图会被键盘占用的垂直空间向上移动。

在我试图在onMeasure中手动操作布局之前,我想看看是否有一致/更好的方法来处理这个问题。浏览器显然正确地处理了这种情况,因此不确定为什么Web视图无法处理这个问题。

需要注意的一点是,由于我无法更改现有架构,因此无法将Web视图设置为全屏或单独的活动。

1 个答案:

答案 0 :(得分:0)

如果我们在没有操作栏的情况下使用全屏,则adjustResize将无效。有关详细信息,请参阅此主题

  • adjustPan not preventing keyboard from covering EditText