Я определяю, была ли нажата кнопка DONE / GO / RETURN, с помощью onEditorActionListener, но проверяю опции IME и KeyEvents для покрытия клавиатур HTC, а также любых клавиатур, которые принимают опции IME.
(Этокод работает и для клавиатур HTC Incredible, а также для любой клавиатуры с опциями IME)
EditText.setOnEditorActionListener(new TextView.OnEditorActionListener(){
public boolean onEditorAction(TextView exampleView, int actionId, KeyEvent event){
if(actionId == EditorInfo.IME_ACTION_DONE
|| actionId == EditorInfo.IME_NULL
|| event.getKeyCode() == KeyEvent.KEYCODE_ENTER){
//Do something in here
return true;
} else {
return false;
}
}
});