Pergunta

Como posso guardar e lembrar a atividade, que foi lançado por uma atividade específica?Dizem que eu tenho atividade 1, que inicia atividade 2 usando startActivityForResult().Então eu vejo o seguinte sequência de chamadas:

       onPause called from Activity1!
       onSaveInstanceState called from Activity1
       onActivityResult called from Activity1 

Mais tarde, quando eu bati o botão back para voltar para Activity1 de Activity2, eu vejo o onRestart chamado:

       onRestart called from Activity1
       onResume called from Activity1

Então a minha pergunta agora é: como eu identificar que a transição é de Activity2 -> Activity1 em vez de (digamos) Activity3 -> Activity1?

Foi útil?

Solução

Uma forma possível é a utilização de startActivityFprResult em vez disso.Quando você terminar de qualquer uma de suas outras Atividades (neste caso Activity2 ou Activity3), você chamar setResult(RESULT_OK, intent) e fornecer um Intent.Este será entregue ao Activity1 em onActivityResult, e você pode apenas colocar alguns extras no Intent para identificar quais Activity acabei de terminar.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top