Не существует способа, который специально определяет выпуск кнопки на задней панели, но вы можете использовать методы onKeyDown()
и onKeyUp()
. Убедитесь, что ключ - это кнопка «Назад», и делайте свои вещи в методе. Вот то, что вы можете сделать:
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
if (keyCode == KeyEvent.KEYCODE_BACK) {
// do your stuff for when the back button is initially pressed
return true;
} else {
return false;
}
}
@Override
public boolean onKeyUp(int keyCode, KeyEvent event) {
if (keyCode == KeyEvent.KEYCODE_BACK) {
// do your stuff for when the back button is released
return true;
} else {
return false;
}
}
Если вы хотите, чтобы переопределить значение по умолчанию обратно прессу, можно просто использовать метод onBackPressed()
, например, так:
@Override
public void onBackPressed() {
// Prevents the user from clicking the back button and returning to the parent activity
}
Эти методы могут быть реализованы непосредственно в вашем класс. Надеюсь, поможет!
Эти методы переопределяют поведение по умолчанию? Я имею в виду, когда я нажму кнопку «Назад», будет ли открыта и предыдущая деятельность? –
Нет, эти методы не переопределяют поведение по умолчанию. Но если вы хотите сделать это, вы можете просто переопределить метод 'onBackPressed()'. Проверьте мое редактирование для получения дополнительной информации. – AkashBhave
Да или я мог бы просто использовать 'dispatchKeyEvent'. –