android中非拉丁字符的识别



我正在尝试获取安卓活动中按键的代码

@Override
public boolean onKeyDown(int keyCode, KeyEvent event){
    char ch = (char) event.getUnicodeChar();
    return super.onKeyDown(keyCode, event);
}

但是keyCode并不取决于键盘布局。对于拉丁字符,它可以正常工作,但对于非拉丁字符,例如"П"、"Э"、"б"(俄语)keyCode从按下的键返回拉丁符号的代码。看来,按键代码只取决于按键,而不是键盘布局。

这样,带有拉丁符号G的键将为每个键盘布局返回G的keyCode。

我该如何解决?

您是否尝试过使用此处描述的KeyCharacterMap?参见:

http://developer.android.com/reference/android/view/KeyCharacterMap.html

可以';t从Android KeyEvent 获取元状态

相关内容

  • 没有找到相关文章