Я пытаюсь добиться, когда пользователь нажимает кнопку «Назад», когда MENU
виден, состояние menuActual
и MENU
изменяется с видимого на невидимое.Если MENU
не открыт и пользователь щелкает обратно, то отображается Toast
с сообщением "Press again to Exit"
, и если вы нажмете назад в течение 2 секунд, приложение закроется.
Код, который у меня есть:
@Override
public void finish() {
if (MENU.getVisibility() == View.VISIBLE){
MENU.setVisibility(View.INVISIBLE);
menuActual.setVisibility(View.INVISIBLE);
}else {
if (doubleBackToExitPressedOnce) {
super.onBackPressed();
moveTaskToBack(true);
return;
}else {
this.doubleBackToExitPressedOnce = true;
Toast.makeText(this, "Tap again to Exit!", Toast.LENGTH_SHORT).show();
new Handler().postDelayed(new Runnable() {
@Override
public void run() {
doubleBackToExitPressedOnce=false;
}
}, 2000);
}
}
}`
Я объявил boolean doubleBackToExitPressedOnce = false;
Приложение доходит до отображения Toast
, говорящего "Press again to Exit"
, но еслиснова нажимается назад, приложение говорит "AppName isn't responding"
Изо всех сил пытается выяснить, почему это был долгий день.
Спасибо!