안녕하세요. XML 파싱 공부 중인 학생입니다.

 

문제는 XMLparser로 값을 받고 파싱하기 전에  progress창을 띄우려고 하는데

 

파싱이 된 후에 progress 창이 on 되었다가 off 됩니다.

 

분명  onclick 메서드가 불리면 onCreateDialog() 의 메서드에 로그가 바로 찍히긴 하는데요.

 

 

private static final int DIALOG_PROGRESS = 0;

ProgressDialog mProgressDialog =null;

 

public void onClick(View v) {

   showDialog(DIALOG_PROGRESS);     // 다이어로그 생성

   runOnUiThread(new Runnable() {
      public void run() {
       getMovieInfo();    //xml 파싱함수
       adapter.notifyDataSetChanged();
       mProgressHandler.sendEmptyMessage(0);  //종료
      }
     });

}  // onclick 종료

 

Handler mProgressHandler = new Handler(){
  @Override
  public void handleMessage(Message msg) {
   super.handleMessage(msg);
   if(mProgressDialog != null && mProgressDialog.isShowing()){
    mProgressDialog.dismiss();
            } 
  }
 };

 

protected Dialog onCreateDialog(int id) {
  Log.d("H","onCreateDialog  id " + id );
  switch(id)
  {
   case DIALOG_PROGRESS:
    mProgressDialog = new ProgressDialog(this);
    mProgressDialog.setProgressStyle(ProgressDialog.STYLE_SPINNER);
    mProgressDialog.setMessage("Loading...");
    mProgressDialog.show();
     break;                                 
            default:
                break;
  }
  return mProgressDialog;
 }

profile

안드로이드 개발자입니다.