我的 Android 应用程序中有一个 WebView,这给我带来了问题。起初没有正确处理箭头键的 keyDown 事件,我不得不抓住 keyDown 并使用这样的 Javascript 来正确处理它们:
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
Log.v(TAG, "KeyCode: " + keyCode + " KeyEvent: " + event);
switch(keyCode) {
case 19: /* Up */
this.loadUrl("javascript:editor.setCursor(editor.getCursor().line - 1, editor.getCursor().ch);");
case 20: /* Down */
this.loadUrl("javascript:editor.setCursor(editor.getCursor().line + 1, editor.getCursor().ch);");
case 21: /* Left */
this.loadUrl("javascript:editor.setCursor(editor.getCursor().line, editor.getCursor().ch - 1);");
case 22: /* Right */
this.loadUrl("javascript:editor.setCursor(editor.getCursor().line, editor.getCursor().ch + 1);");
}
return super.onKeyDown(keyCode, event);
}
但是现在我遇到了一个问题,每次我使用其中一个箭头键时,软键盘都会隐藏起来。
我在 Stackoverflow 上发现了另一个问题,这似乎是完全相同的问题,但没有人回答他:
有什么方法可以防止软键盘隐藏在我身上吗?