2011-09-18 13 views
0

HomeActivity으로 돌아가려면 모든 활동에서 Button를 설정해야합니다.하지만 을 다시로드하지 말아야합니다. HomeActivity를 다시로드해야합니다. 이미 HomeActivity가있는 인스턴스를 다시 사용해야합니다. 어떻게 할 수 있습니까? 그?홈 활동으로 돌아 가기

답변

3

당신은 사용해야 FLAG_ACTIVITY_REORDER_TO_FRONT

Context.startActivity에()에 전달 텐트에 설정하면 http://developer.android.com/reference/android/content/Intent.html#FLAG_ACTIVITY_REORDER_TO_FRONT

는,이 플래그는 시작된 활동은 작업의 전면에 데려하게됩니다 이미 실행중인 경우 기록 스택. 예를 들어, A, B, C, D의 네 가지 활동으로 구성된 작업을 고려하십시오. D가 startActivity() 을 활동 B의 구성 요소로 해석되는 인 텐트를 호출하면 B 이 결과 스택이 인 결과 : A, C, D, B FLAG_ACTIVITY_CLEAR_TOP도 지정되면이 플래그는 무시됩니다.

+0

대신 onResume의()) 당신이에서 onCreate (, 당신은 클래스를 초기화하는 데 사용하는 다른 사용자의 AsyncTask를 호출, 또는 아무것도를 넣어 있는지 확인하십시오. 안드로이드 가비지가 인스턴스를 수집하지 않는 한 활동은 즉시로드되어야합니다. 활동이 가비지 수집 된 경우 다시로드 될 수 있습니다. – dbaugh

+0

고마워, 너는 내 하루를 복잡하게 만들었다 고 생각했다. :) –

+0

@dbaugh,이 FLAG는 현재 Activity를 마치고 (Previous Activity), 이전 활동으로 돌아 간다. –

1

내 활동에서 홈 버튼으로 FLAG_ACTIVITY_CLEAR_TOP을 사용했습니다. HomeActivity이 이미 애플리케이션 스택에있는 경우이 플래그는 HomeActivity 위의 모든 활동을 종료합니다. 나중에 HomeActivity의 순서를 바꿀 필요가 있는지에 따라 달라집니다 (뒤로 버튼을 클릭하면 집에 돌아 왔을 때의 활동으로 돌아갑니다) 또는 HomeActivity 이상의 모든 활동을 닫으려는 경우 (예 : 에 돌아올 때까지 버튼을 누르면 집에서 활동하는 응용 프로그램이 닫힙니다.

http://developer.android.com/reference/android/content/Intent.html#FLAG_ACTIVITY_CLEAR_TOP