在Android WebView中捕获按键事件
目前,我的应用程序有一个webView,可以加载某些表单/网站等 现在,我想在此webView中捕获按键事件。下面是我正在使用的代码:在Android WebView中捕获按键事件,android,Android,目前,我的应用程序有一个webView,可以加载某些表单/网站等 现在,我想在此webView中捕获按键事件。下面是我正在使用的代码: @Override public boolean dispatchKeyEvent(KeyEvent KEvent) { int keyaction = KEvent.getAction(); if(keyaction == KeyEvent.ACTION_DOWN) {
@Override
public boolean dispatchKeyEvent(KeyEvent KEvent)
{
int keyaction = KEvent.getAction();
if(keyaction == KeyEvent.ACTION_DOWN)
{
int keycode = KEvent.getKeyCode();
int keyunicode = KEvent.getUnicodeChar(KEvent.getMetaState() );
char character = (char) keyunicode;
Toast.makeText(this,"DEBUG MESSAGE KEY=" + character + " KEYCODE=" + keycode, Toast.LENGTH_SHORT).show();
}
return super.dispatchKeyEvent(KEvent);
}
使用上面的代码,我只能捕获退格和数字。字母表和特殊字符不会反映出来
是这样吗?或者我必须创建自己的特定于应用程序的键盘来捕获按键事件()
还有别的办法吗
提前感谢只要将此代码放在您的网络视图中,一切都会很有魅力
public InputConnection onCreateInputConnection(EditorInfo outAttrs) {
return new BaseInputConnection(this, false);
}
OnKeyListener可用于捕获webView上的关键事件
mWebView.setOnKeyListener(new View.OnKeyListener() {
@Override
public boolean onKey(View v, int keyCode, KeyEvent event) {
// You can get any keyCode or KeyEvent here
return false;
}
});
这里有一个更完整的答案: