2012-04-15 2 views
6

Вопрос: Скажем, стек деятельности состоит из A-> B-> C.андроид вставляется в стек активности

Если пользователь выполнил заказ, например: Пуск A -> B -> C, нажатие кнопки возврата вызовет C-> B-> A. Однако, если пользователь вводит непосредственно в действие C (например: через уведомление), нажатие кнопки возврата приведет к закрытию приложения, а не к B-> A.

Как вставить в стек деятельности, чтобы стать A-> B-> C, так что, когда пользователь нажал обратно на C, он всегда будет обратно В.

Благодаря

ответ

1

просто overide метод onBackPressed() и startactivity B в activityc и startactivity a в операции b.

в activty с имеет этого код ::

public void onBackPressed(){ 
startActivity(new Intent(this,ActivityB.class)); 
finish(); 
} 

и в деятельности б этого код ::

public void onBackPressed(){ 
startActivity(new Intent(this,ActivityA.class)); 
finish(); 
} 

и активности А имеет этого код ::

public void onBackPressed(){ 
finish(); 
} 
+0

это нарушает порядок стека активности Android? Он должен завершить текущую деятельность и вернуться к предыдущей, не начинать новую новую деятельность. –

+0

Я думаю, что в вашем случае вы должны вручную начать работу. –

+0

Это одно из хороших решений. Лучше использовать фрагменты вместо активности для лучшей производительности. – Sripathi

Смежные вопросы