서비스 클래스가있는 android-application이 있고 RestWebService와 통신합니다. 서비스 클래스의 메소드는 AsyncTasks를 사용합니다. AsyncTask를 실행하는 동안 ProgressDialog를 표시하려고합니다. 내 AsyncTask를의 onPreExecute에이 메소드를 호출AsyncTask의 ProgressDialog가 작동하지 않음
private ProgressDialog showProgressDialog(Context ctx) {
progressDialog = new ProgressDialog(ctx);
progressDialog.setProgressStyle(STYLE_SPINNER);
progressDialog.setCancelable(true);
progressDialog.show();
return progressDialog;
}
:
그러므로 나는 개인 필드public final class UserService extends Service {
private static final String LOG_TAG = UserService.class.getSimpleName();
private static UserService instance = null;
private ProgressDialog progressDialog;
public static UserService getInstance() {
if (instance == null) {
instance = new UserService();
}
return instance;
}
...
}
그것은 방법 showProgressDialog (컨텍스트 CTX)에서 인스턴스화되어 있습니다
@Override
protected void onPreExecute() {
progressDialog = showProgressDialog(ctx);
}
그리고 onPostExecute에서 닫으십시오.
@Override
protected void onPostExecute(HttpResponse<User> unused) {
Log.v(LOG_TAG, "onPostExecute");
progressDialog.dismiss();
}
로그 명령이 있지만 내 ProgressDialog가 닫히지 않기 때문에 onPostExecute 메서드가 실행됩니다.
내가 뭘 잘못하고 있니?
답장을 보내 주셔서 감사합니다.
서비스 내에서 진행 대화 상자를 표시하고 있습니까? – aromero