2014-06-05 5 views
0

특정 활동에 의해 시작된 활동을 어떻게 저장하고 기억할 수 있습니까? startActivityForResult()를 사용하여 활동 2를 시작하는 활동 1이 있다고 가정 해보십시오. 가 그럼 난 다음의 일련의 호출을 참조하십시오Android 활동에서 다른 활동 호출

 onRestart called from Activity1 
     onResume called from Activity1 

그래서 제 질문은 지금 : 나는 activity2에에서 activity1에로 돌아가려면 뒤로 단추를 명중 할 때 나중에

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

을, 나는라는 onRestart를 참조 Activity3 -> Activity1이 아닌 Activity2 -> Activity1의 전환임을 어떻게 식별합니까?

답변

1

가능한 한 가지 방법은 startActivityFprResult을 사용하는 것입니다. 다른 활동 (이 경우 Activity2 또는 Activity3) 중 하나를 마치면 setResult(RESULT_OK, intent)으로 전화를 걸어 Intent을 제공하십시오. 이것은 Activity1에 onActivityResult으로 전달되며 Intent에 일부 추가하여 방금 완료 한 Activity을 식별 할 수 있습니다.

+0

그러나 onActivityResult()에서 얻은 정보는 어디에 저장할 수 있습니까? Activity2 또는 Activity3이 올바르게 실행 된 후에 호출되는 것으로 가정합니다. 내가 원했던 것은 Activity1이 다시 시작될 때 *가 어떤 활동 (2 또는 3)이 실행되고 있는지를 파악하는 것입니다. 가능한가요? – user3079275

+0

'startActivityForResult'로 연 활동이 끝나면'onActivityResult'를 얻습니다. Activity2 _launches_ 후에 호출되지 않고 Activity2 _finishes_ 후에 호출되고 Activity1로 돌아옵니다. – Karakuri

관련 문제