2011-07-02 4 views
0

실행 중이며 스레드 핸들에서 완료율을 허용하는 ProgressDialog가 있습니다. 화면이 잠겨있을 때 잠기지 않으면 앱은 앱의 홈 화면으로 돌아가서 ProgressDialog를 계속 표시하지 않습니다.화면 잠금 후 ProgressDialog가 사라짐

ProgressDialog가있는 동일한 페이지로 어떻게 되돌릴 수 있습니까? 어떻게 든 핸들 리소스를 저장하고 onResume에 다시 만들 필요가 있다고 가정하지만 이것을 수행하는 방법을 잘 모르겠습니다.

감사합니다.

답변

0

제대로 된 것 같습니다. 다음과 같은 클래스 변수가 있다고 가정합니다. showProgressDialog 및 myProgress :

@Override 
protected void onResume() { 
    super.onResume(); 
    if(showProgressDialog) 
     { 
     myProgressDialog.show(); 
     myProgressDialog.setProgress(myProgress); 
     } 

} 
+0

화면이 잠겨있을 때 활동이 재현됩니까? 그렇다면 이전 스레드 핸들에 액세스 할 수 없으므로 진행 상황을받을 수 없게됩니다. 감사. – Nick

+0

다릅니다. os에 메모리가 필요하면 활동이 중단 될 수 있습니다. 따라서 물건을 저장하려면 http://developer.android.com/reference/android/app/Activity.html#onSaveInstanceState%28android.os.Bundle%29 및 http://developer.android.com/reference를 사용할 수 있습니다. /android/app/Activity.html#onRestoreInstanceState%28android.os.Bundle%29 – Emiam

+0

스레드 처리기가 객체이기 때문에 onSave/RestoreInstanceState가 작동하지 않는다고 생각하지 않습니다. 또한 앱이 복원되면 ProgressDialog가있는 서브 페이지 중 하나 대신 홈페이지 활동이 표시됩니다. 앱을 새로 고침 한 것처럼 보입니다. – Nick

관련 문제