2011-08-06 4 views
2

ActivityGroup은 뷰 형식으로 활동을 관리하므로 ActivityGroup에서 자식 Activity를 호출 한 부모 Activity로 돌아가려고 할 때 onResume()이 라는.ActivityGroup에서 뒤로 버튼을 누르면 OnResume()이 호출되지 않습니다.

나는 이런 식으로 OnResume()을 호출 해 보았습니다.

((Activity)view.getContext()).onResume(); 

하지만 작동하지 않는 대신 finish()가 정상적으로 작동합니다.

((Activity)view.getContext()).finish(); 

그래서, 나는 onResume()를 호출 할 수보기에서 작업을 얻을 수 있지만, 아니다, 어떤 생각이 감지됩니다.

답변

2

ActivityGroup을 사용하여 뒤로 버튼을 누르면이 기능을 사용해보십시오.

public void back() 
    { 
    if (arrList.size() > 1) 
     { 
     arrList.remove(arrList.size() - 1); 
     View v = arrList.get(arrList.size() - 1); 

     Activity_name object = ((Activity_name)v.getContext()); 
     object.onResume(); 
     setContentView(v); 
     } 
    else { 
     this.finish(); 
    } 
    } 
0

onResume은 활동이 스택의 맨 위에 올 때 OS에서 호출하는 라이프 사이클 메소드입니다. 직접 호출 할 수는 없습니다.

+0

내가 아는 한 onResume()의 도착 우리가 한 번 호출 후 활동에 복귀하지만, 그 이유 내가 직접 전화를했다 그래서이 경우에는 onResume()가,라고 가져 오지 때 호출 . –

+0

onCreate() 이후 및 onPause()를 따라 앱을 다시 시작한 후에 호출됩니다. 직접 전화 할 수있는 장소가 없습니다. Ever – Earl

+0

나는 어떻게 달리지 않았다는 결정을했는지 확신 할 수는 없지만 직접 호출 할 수는 없다. 여기에서 라이프 사이클 다이어그램을 검토하십시오. http://developer.android.com/reference/android/app/Activity.html –

관련 문제