Android - 如何将KeyEvent KeyCode转换为Char?

Jor*_*rge 5 android

我想在按下Android键盘时获取KeyCode事件的char值.

public void KeyCodeEventAsChar(int keyCode, KeyEvent event) {

  char pressedKey;

  // TODO: convert key Code Event into char

  syslog.d ("TEST", "The pressed key in Android keyboard was char: " + pressedKey);

}
Run Code Online (Sandbox Code Playgroud)

有没有人知道如何做到这一点?!

更新:

我不想要硬编码的文字!我想把它转换为通讯员char!

更新2:

我还需要死的字符,例如:à,á,ò,ó等......

答案发现:

// TODO: convert key Code Event into char
char pressedKey = (char) event.getUnicodeChar();
Run Code Online (Sandbox Code Playgroud)

重要说明: char只有1个字节长度,因此支持多个字符

Jor*_*rge 9

>我已经回答了更新问题

// TODO: convert key Code Event into char
char pressedKey = (char) event.getUnicodeChar();
Run Code Online (Sandbox Code Playgroud)

重要说明:char只有1个字节长度,因此不支持多个字符

希望它能以某种方式帮助你

  • 只是一个注意事项:在java中有2个字节 (3认同)

Sac*_*ani 1

你必须像这样检查哪个键被按下

if(keyCode  == KeyEvent.KEYCODE_ENTER){

syslog.d ("TEST", "The pressed key in Android keyboard was Enter" );
}
Run Code Online (Sandbox Code Playgroud)

这是您可以找到所有关键事件的链接

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