Android 4.4.2和软键盘.optionmenu可能吗?发生了"未实现的WebView方法onKeyDown调用"

use*_*460 11 android

有人贴这个....

在4.4.2(api级别19)中,当使用软(软件)键盘时,WebView不再正确地在javascript中接收按键事件.不调用javascript函数.
我已经在模拟器和Nexus 4运行中确认了这一点,4.4.2. 我已经附加了一个示例网页.对于模拟器,LogCat显示以下消息指示问题:

04-07 23:59:22.613: E/chromium(2271): [ERROR:immediate_input_router.cc(507)] We seem to have a different key type sent from the renderer. (7 vs. 10). Ignoring event.
04-07 23:59:22.613: E/chromium(2271): [ERROR:immediate_input_router.cc(504)] Got a KeyEvent back from the renderer but we don't seem to have sent it to the renderer!
04-07 23:59:22.633: E/chromium(2271): [ERROR:immediate_input_router.cc(504)] Got a KeyEvent back from the renderer but we don't seem to have sent it to the renderer!
04-07 23:59:54.203: W/UnimplementedWebViewApi(2271): Unimplemented WebView method onKeyDown called from: android.webkit.WebView.onKeyDown(WebView.java:2169)
Run Code Online (Sandbox Code Playgroud)

那么,Android 4.4.2和软键盘中没有办法看到optionmenu吗?当我触摸软键盘菜单按钮时,会显示logcat

08-08 17:25:55.138: W/UnimplementedWebViewApi(22840): Unimplemented WebView method onKeyDown called from: android.webkit.WebView.onKeyDown(WebView.java:2169)
Run Code Online (Sandbox Code Playgroud)

小智 0

我在这里的建议是:

您可以将 webview 客户端附加到 webview。然后您可以覆盖扩展 BaseInputConnection 的类中的方法:

@Override
public boolean sendKeyEvent(KeyEvent event) {
    return super.sendKeyEvent(event);
    // call webview client method here to let javascript know what key was pressed
}
Run Code Online (Sandbox Code Playgroud)

我希望这可以帮助你。