Chvalov
@Chvalov

Как запретить выход из приложения кнопкой назад в Android?

Здравствуйте, на планшете стоит Android 5.0.1 (Asus TF300T)

Нужно запретить выход из приложения клавишей назад, работаю в среде Android Studin 1.0.1
Весь код кладу по пути Проект->java->com.test.project-.MainActivity

Код
@Override
public void onBackPressed()
{
     moveTaskToBack(true);
}
Не работает
@Override
public void onBackPressed()
{
     super.onBackPressed();
}
Также не работает.

Подскажите как это сделать, или я вообще не там пишу код ?
  • Вопрос задан
  • 6875 просмотров
Решения вопроса 1
@ikeagold
Рабочий и окончательный вариант:
@Override
  public boolean onKeyDown(int keyCode, KeyEvent event) {
    if (keyCode == KeyEvent.KEYCODE_BACK) {
      return true;
    }
    return false;
  }


Код старый еще в 12ом написал (на сворачивание вместо закрытия), но работал:
// Don't close application
	@Override
	public boolean onKeyDown(int keyCode, KeyEvent event) {
		if (keyCode == KeyEvent.KEYCODE_BACK) {
			moveTaskToBack(true);
			return true;
		}
		return false;
	}

или еще нашел такое:
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
    return false;
}

@Override 
public void onBackPressed(){  
   Toast.MakeText(getApplicationContext(),"You Are Not Allowed to Exit the App",     Toast.LENGTH_SHORT).show();
}
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
Chvalov
@Chvalov Автор вопроса
Что то я совсем ничего не понял
Вот код который отвечает за нажатие клавиши назад
@Override
  public boolean onKeyDown(int keyCode, KeyEvent event) {
    if (keyCode == KeyEvent.KEYCODE_BACK) {
      return true;
    }
    return false;
  }
А вот код который как я понимаю на любое нажатие клавиш возвращает false
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
    return false;
}
Но он точно также работает как верхний код, все остальное работает (Сворачивание и т.п.) как это понимать ?
Как я понимаю то там я должен был бы указать клавишу и ее поведении
developer.android.com/reference/android/view/KeyEv...
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы