【问题标题】:How do I convert key code to char or String to show it on TextView [duplicate]如何将关键代码转换为字符或字符串以在 TextView 上显示 [重复]
【发布时间】:2012-10-13 13:40:51
【问题描述】:

可能重复:
How can I convert a key code into a char or string?

嘿,我对 Android 还很陌生,不确定如何使用 getKeyCode。我有这个

public boolean onKeyDown(int keyCode, KeyEvent event)
{
    switch(keyCode)
    {
    case KeyEvent.KEYCODE_DPAD_RIGHT:
        Toast.makeText(getApplicationContext(), "Pressed DPAD Right Button",
        Toast.LENGTH_LONG).show();
        return true;
    case KeyEvent.KEYCODE_DPAD_LEFT:
            Toast.makeText(this, "Pressed DPAD Left Button",
            Toast.LENGTH_LONG).show();
            return true;
    }
    return super.onKeyDown(keyCode,event);
}

但我想更改一个文本视图来说明按下了什么按钮。如何将 keyCode 传递给 setText 函数?我已经把它全部连接起来了,我只需要将 keyCode 变量放入

txt2.setText(Integer.toString(getKeyCode()));

【问题讨论】:

  • 你试过了吗,KeyEvent.getKeyText(KeyEvent.getKeyCode())
  • 谢谢,搞定了 :) 快速的问题,有没有办法让它显示按下的键的实际名称而不是分配给它的数字? @Rossum,这似乎不起作用,只会给我静态/非静态错误。
  • @Calender Man:在你的代码中,试试event.getKeyText(event.getKeyCode())

标签: java android keycode


【解决方案1】:

如果您想获取密钥的实际名称,您可以执行以下操作:

int pressedKeyCode = event.getKeyCode();
Object pressedKeyCodeObject = new Integer(pressedKeyCode);
String pressedKeyText = KeyEvent.getKeyText((Integer)pressedKeyCodeObject);

【讨论】:

    猜你喜欢
    • 2011-09-28
    • 2012-10-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-09-27
    • 1970-01-01
    • 1970-01-01
    • 2012-08-25
    相关资源
    最近更新 更多