6

我有一个 EditText,我想响应用户按下“Enter”键。以下是相关代码:

EditText edittext = (EditText) findViewById(R.id.user_query);
edittext.setOnKeyListener(new OnKeyListener() {
    public boolean onKey(View v, int keyCode, KeyEvent event) {
        if ((event.getAction() == KeyEvent.ACTION_DOWN) && (keyCode == KeyEvent.KEYCODE_ENTER || keyCode == KeyEvent.KEYCODE_DPAD_CENTER)) {
            sendMessage(v);
            return true;
        }
        return false;
        }
    });

当我在我的平板电脑(Toshiba Thrive)上运行它时,它运行良好。但是,在我的手机(HTC Desire HD)上,按下“Enter”键时 OnKeyListener 根本不会触发......但在第二次按下“Enter”时会起作用。为什么会这样,我该如何解决?

4

2 回答 2

7

使用手机上的自动更正功能,按“Enter”一次选择建议的单词拼写。第二次按“Enter”会将按键发送到应用程序。这是一个功能,而不是一个错误。

于 2012-08-15T14:36:58.470 回答
0

您是否尝试过为您的设备(Desire HD)创建一个 AVD 并查看问题是否也出现在那里?你的代码似乎找到了我

于 2012-08-07T22:33:45.867 回答