2

情况:我有一个带有 html 输入字段的 webview,用于输入位置,下面有一个 webview 来显示建议。该输入字段上有一个 keyup 处理程序和一个 onchange 处理程序。在 keyup 上有一条消息发出来调用 api 来填充建议 webview。

问题:输入一个字符后,输入字段失去焦点。在 android 2.3 上,键盘保持打开状态,但继续打字什么也没做。在 android 4.1 上,onchange 处理程序被触发(就好像用户已经按回车键提交他们输入的内容而不是选择建议)并且键盘和 webviews 被带走。

我考虑过的事情:外部 loadURL 调用可能会导致这种情况(如“javascript:var ...”),在其他视图上调用“requestFocus”或“bringToFront”也可能导致这种情况。在视图树侦听器上设置事件处理程序可能有助于清除问题。

不幸的是,据我所知,没有发生 url 更改,似乎没有其他视图请求焦点或被带到前面。将处理程序放在视图树侦听器上没有帮助——它是在输入字段失去焦点后触发的。

我没有想法试图找到这种焦点变化的原因。

我能做些什么来进一步调查并解决这个问题?

4

1 回答 1

0

loadUrl 是否被调用(在第一次之后)?原来 loadUrl 会自动关闭键盘。如果您使用的是loadUrl,我找到了解决方法!试试https://stackoverflow.com/a/18776064/513038

于 2013-09-19T02:49:22.713 回答