【问题标题】:How to get keyCode in android如何在android中获取keyCode
【发布时间】:2020-09-17 17:05:35
【问题描述】:

我有以下代码:

tv.setOnKeyListener(new View.OnKeyListener() {
        public boolean onKey(View v, int keyCode, KeyEvent event) {
         switch(keyCode) 
            {
                case KeyEvent.KEYCODE_0:
                    Log.v(TAG, "Keycode_0");
                    return true;
                    //break;

                case KeyEvent.KEYCODE_1:
                    Log.v(TAG, "Keycode_1");
                    return true;
                    //break;
                case KeyEvent.KEYCODE_D:
                    Log.v(TAG, "Keycode_D");
                    return true;
                    //break;
                case KeyEvent.KEYCODE_2:
                    Log.v(TAG, "Keycode_2");
                    return true;
                    //break;
                case KeyEvent.KEYCODE_TAB:
                    Log.v(TAG, "Keycode_TAB");
                    return true;
                    //break;
                case KeyEvent.KEYCODE_DEL:
                    Log.v(TAG, "Keycode_DEL");
                    return true;
                    //break;
                case KeyEvent.KEYCODE_COMMA:
                    Log.v(TAG, "Keycode_COMMA");
                    return true;
                    //break;
                case KeyEvent.KEYCODE_ENTER:
                    Log.v(TAG, "KEYCODE_ENTER");
                    i=KeyEvent.KEYCODE_ENTER;
                    Log.v(TAG, "KEYCODE_ENTER"+i);
                    return true;
                    //break;
               case KeyEvent.KEYCODE_SHIFT_LEFT:
                    Log.v(TAG, "KEYCODE_SHIFT_LEFT"+KeyEvent.KEYCODE_SHIFT_LEFT);
                    return true;
                    //break;
                case KeyEvent.KEYCODE_SHIFT_RIGHT:
                    Log.v(TAG, "KEYCODE_SHIFT_RIGHT"+KeyEvent.KEYCODE_SHIFT_RIGHT);
                    return true;
                    //break;
                case KeyEvent.KEYCODE_SPACE:
                    Log.v(TAG, "KEYCODE_SPACE"+KeyEvent.KEYCODE_SPACE);
                    return true;
                    //break;
                default:
                    break;
            }
            return false;
        }
    });

但它仅适用于 enterdelete 键。对于其余的键,它不起作用。我想要它用于shiftcaps lock 键。

【问题讨论】:

标签: android


【解决方案1】:

在你的editText上使用这个监听器:

editText.setOnKeyListener(new OnKeyListener() {

@Override
public boolean onKey(View v, int keyCode, KeyEvent event) {

return false;
}
});

【讨论】:

    【解决方案2】:

    为什么你评论了 break 语句。请取消注释 break 语句并尝试。

    【讨论】:

    • 因为有return语句所以不需要
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-05-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多