Я работаю над приложением дистанционного управления и вам нужно определить, когда пользователь нажал кнопку удаления <x
в пустое текстовое поле, чтобы отправить этот символ и удалить что-то с удаленной машины.Android, как обнаружить кнопку «удалить», нажать на клавиатуре, чтобы удалить один символ?
Как определить, что пользователь нажал кнопку <x
Удалить на клавиатуре Android?
Я попытался объявить о прослушивании клавиш, но это, похоже, не сработало.
final EditText edittext = (EditText) findViewById(R.id.editText);
edittext.setOnKeyListener(new View.OnKeyListener() {
public boolean onKey(View v, int keyCode, KeyEvent event) {
// If the event is a key-down event on the "enter" button
Log.i("KEYCODE", "" + keyCode);
if ((event.getAction() == KeyEvent.ACTION_DOWN) &&
(keyCode == KeyEvent.KEYCODE_ENTER)) {
// Perform action on key press
return false;
} else if (edittext.length() == 0) {
if(keyCode == KeyEvent.KEYCODE_DEL) {
//perform erase when the text field is empty
}
}
return false;
}
});
BACKSPACE, TAB, ENTER, RETURN, ESC и DELETE) не требуют проверки, чтобы убедиться, что ключ закодирован; для этих ключей вы должны просто использовать ключевую переменную direct46 is keyCode fore delete – MaxZoom
Я просто добавил кнопку на экран, эквивалентный удалению. Я показываю/скрываю его с клавиатуры –
Прохладный, можно ли увидеть? – MaxZoom