2011-09-06 5 views
0

초보자 용 Android 프로그래머입니다. AsyncTask 및 ProgressDialog를 사용하려고했지만 문제가 발생했습니다. ProgressDialog를 닫을 수 없습니다.Android 앱에서 ProgressDialog를 닫을 수 없습니다.

다음과 같은 코드가 활동을 확장하는 importExportActivity 안에있는 -

public class ProgressTask extends AsyncTask<Void, Void, Void> {  
    ProgressDialog dialog1 = new ProgressDialog(importExportActivity.this); 

    protected void onPreExecute() { 
      this.dialog1.show(importExportActivity.this, "", 
            "Please wait for few seconds...", true); 
    } 

    @Override 
    protected void onPostExecute(final Void success) { 
      dialog1.dismiss(); 
    } 

    protected Void doInBackground(final Void ... args) { 
       ...... did the main logic .... 
      return null; 
    } 
} 

구글 검색 많은 일을하지만,이에 대한 해결책을 찾을 수 없습니다.

누군가 도움을 줄 수 있습니까? 내 자신의 질문에 대답

@Override 
protected void onPostExecute(final Void success) { 
     dialog1.dismiss(); 
    return; 

} 
+1

합니까'doInBackground (무효 ...)'적 완료? 그렇지 않다면, 당신의'ProgessDialog'은 닫히지 않을 것입니다 ... –

+1

예 - "main logic"코드를 게시하십시오. – SBerg413

+1

진행률 대화 상자를 최종적으로 만듭니다. –

답변

0
protected void onPreExecute() { 
     this.dialog1.show(importExportActivity.this, "", 
           "Please wait for few seconds...", true); 
     super.onPreExecute(); 
} 

@Override 
protected void onPostExecute(final Void success) { 
     dialog1.dismiss(); 
     super.onPostExecute(RESULT); 
}  

광산이 당신이 반환되지 않습니다 생각하는 방법 ...

2

을하고있다. 는 일 다음 :

public class ProgressTask extends AsyncTask<Void, Void, Void> {  
ProgressDialog dialog1; 

protected void onPreExecute() { 
     dialog1 = ProgressDialog.show(importExportActivity.this, "", 
           "Please wait for few seconds...", true); 
} 

@Override 
protected void onPostExecute(final Void success) { 
     dialog1.dismiss(); 
} 

protected Void doInBackground(final Void ... args) { 
      ...... did the main logic .... 
     return null; 
} 

}

1

:

+0

이 질문에 대한 답변으로 자신의 답변을 표시해야합니다. 도움이 될 것입니다. – Raffo

관련 문제