Я написал код для одного приложения. В этом я написал IME_ACTION_DONE для редактирования текста. Все другие устройства поддерживают это действие, но в желании HTC я не получаю эту кнопку "done" softkeyboard. Как я могу получить эту мягкую кнопку в Желание HTC по-другому, пожалуйста, дайте мне альтернативу для этой функциональности кнопок на EditText без большого количества изменений в моем приложении для использования с HTC.
Кнопка "Альтернатива действия" в желании HTC?
Ответ 1
Ваша проблема связана не только с HTC. Никакая реализация IME не обязана поддерживать кнопку действия. Я уверен, что есть любое количество мягких клавиатур, поэтому они будут иметь тот же эффект.
пожалуйста, дайте мне альтернативу для этой функциональности кнопок на EditText без большого количества изменений в моем приложении для использования с HTC.
Используйте виджет Button
в действии. Или используйте опцию меню выбора. В любом случае вам это нужно, так как на аппаратных клавиатурах нет кнопки действий, поэтому вам также нужен некоторый пользовательский интерфейс.
Ответ 2
Для учета других клавиатур, которые не прослушиваются! Вы также можете это сделать.
yourEditText.setOnEditorActionListener(this);
@Override
public boolean onEditorAction(TextView v, int actionId, KeyEvent event) {
// Hides the keyboard on HTC devices that do not comply with imeOptions="actionDone"
// You could wrap this in a device check if you just want to single out HTC
((InputMethodManager) v.getContext().getSystemService(Context.INPUT_METHOD_SERVICE)).toggleSoftInput(0, 0);
return true;
}