【问题标题】:Android soft keyboard not panning web viewAndroid软键盘不平移网页视图
【发布时间】:2013-08-10 15:40:31
【问题描述】:

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

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

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

  • 网页视图通过以下方式打开到 google.com:

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

  • AndroidManifest.xml 具有以下属性:

"android:windowSoftInputMode="adjustPan"

当点击 google 页面上的搜索框时,键盘会弹出,但 web 视图本身并没有像 adjustPan 指示的那样向上移动。主 Activity 也有一个原生文本字段,单击该文本字段时会按预期向上移动整个布局(包括 Web 视图)。

Nexus 7 和 Galaxy Nexus 上的 4.2.2 都存在这种行为。

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

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

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

【问题讨论】:

  • 我也有同样的问题。我不能使用“adjustResize”,因为它会缩小 webview 并且看起来不太好。你有什么解决办法吗。在最后一段你提到“一件事……改变”;您能否解释一下这些选项,以便其他人(包括我)可以使用它
  • @dizzymonkey 你找到解决方案了吗?

标签: android webview keyboard textfield ime


【解决方案1】:

如果我们使用没有操作栏的全屏,adjustResize 将不起作用。详情见本帖

  • adjustPan not preventing keyboard from covering EditText
  • 【讨论】:

      猜你喜欢
      • 2016-04-04
      • 2019-08-23
      • 2013-03-26
      • 2016-08-23
      • 2015-11-20
      • 1970-01-01
      • 2011-12-27
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多