Вы можете просто переопределить поведение клавиши возврата :
Действие A запускает действие B
Нажатие кнопки Back на действии B должно привести к
Действие B запускает действие C
Нажатие кнопки Back на мероприятии C должно закрыть приложение
Обратите внимание, что я не вызываю super из onBackPressed.Это также позволяет вам переопределить механизм просмотра стека для Android, что, по моему мнению, является большим преимуществом, поскольку в настоящее время, похоже, не существует способа простого удаления одного самого старого элемента из стека просмотра.
public class B extends Activity
{
...
@Override
public void onBackPressed()
{
// Start activity A
Intent aIntent = new Intent(this, A);
startActivity(bIntent);
}
...
}
public class C extends Activity
{
...
@Override
public void onBackPressed()
{
// Close
finish();
}
...
}
Вы также можете специально завершить родительское действие, но при использовании этого метода вам не нужно беспокоиться об этом.