1

我需要检查输入键来启动搜索程序。除某些键盘外,所有作品似乎都有一个 SEND 按钮而不是 ENTER 按钮。按下此按钮时,代码转储。我在下面有一个小样本。有任何想法吗?

tx1.setOnEditorActionListener (new OnEditorActionListener() {
    @Override
    public boolean onEditorAction(TextView v, int actionId, KeyEvent event) {
        System.out.println("Key: " + event.getKeyCode()); //BLOWS UP HERE
        if  (event.getAction() ==  KeyEvent.ACTION_DOWN) {
            if (event.getKeyCode() == KeyEvent.KEYCODE_ENTER) {
                // ...
            }
        }
    }
}
4

1 回答 1

2

我相信在这种情况下该事件为空。为了检测软键盘上的发送操作,您的 onEditorActionListener 实际上应该这样做。

onEditorAction(TextView v, int actionId, KeyEvent event){
    if(actionId == EditorInfo.IME_ACTION_SEND){
        send();
    }
    return false;// so the softkeyboard will still close after pressing 'send'
}
于 2011-02-17T23:36:46.853 回答