单击输入时

When enter is clicked

我有一个调出小键盘的编辑文本。我希望当用户单击 'enter' 按钮时执行某些操作。

我已经试过了,但似乎不起作用:

@Override
public boolean onKeyUp(int keyCode, KeyEvent event) {
    switch (keyCode) {
        case KeyEvent.KEYCODE_NUMPAD_ENTER:
            check_the_code();
            return true;
        default:
            return super.onKeyUp(keyCode, event);
    }
}

P.S。有没有办法禁止 'enter' 关闭小键盘?

尝试寻找要按下的按钮:

KeyEvent.KEYCODE_ENTER 

尝试通过检查键 (KeyCode) 的 int 值来记录 enter 返回的值,然后将其与您要使用的 KeyEvent 中的键值进行比较,看看它是否符合您的预期。

您应该得到 KEYCODE_NUMPAD_ENTER 的值 160 和 KEYCODE_ENTER 的 66。

EditText editText = (EditText) findViewById(R.id.edittext);
editText.setOnEditorActionListener(new OnEditorActionListener() {
    @Override
    public boolean onEditorAction(TextView v, int actionId, KeyEvent event) {
        boolean handled = false;
        if (actionId == EditorInfo.IME_ACTION_SEND) {
            Toast.makeText(this, "Clicked", Toast.LENGTH_SHORT).show();
            handled = true;
        }
        return handled;
    }
});