Навигация по нескольким действиям - PullRequest
1 голос
/ 12 октября 2010

У меня есть 2 занятия A и B . Теперь это мои цели.

  1. Когда я нахожусь в B и если я нажимаю кнопку Home , состояние действия должно быть сохранено. (Нет проблем с этим.)
  2. Когда я запускаю B с A после шага 1, необходимо создать новый экземпляр B (т. Е.) Предыдущее состояние должно быть отброшено.

Но на шаге 2 состояние B все еще преобладает. Как мне достичь своей цели?

Ответы [ 3 ]

3 голосов
/ 12 октября 2010

Я думаю, что одним из возможных решений будет передача некоторой дополнительной информации внутри начального Намерения, когда вы запускаете Занятие B из А (например, логическое значение).И в «onStart ()» из B вы проверяете, можете ли вы найти эту дополнительную информацию в намерении (вы получаете ее с помощью getIntent ()).Если его нет, это означает, что вы перезагружаете предыдущее состояние действия.Если это так, то вы не перезагружаете его.

1 голос
/ 12 октября 2010

Вам даже не нужно отправлять логическое значение, как предложил Scythe.Bundle savedInstanceState будет нулевым в onCreate для действия B, если действие A только начало его, тогда как оно будет ненулевым, если вы вернетесь из сохраненного состояния.

...