2016-08-30 121 views
0

我在下面的棉花糖設備上出現錯誤:但棉花糖OS進度對話框下方工作正常。 錯誤如下:進度對話框出錯

E/AndroidRuntime: FATAL EXCEPTION: main 
Process: com.example.perscitusSolutions.sherbet, PID: 2771 
java.lang.NullPointerException: Attempt to invoke virtual method 'android.view.View android.view.View.findViewById(int)' on a null object reference 
    at com.android.internal.app.AlertController.setupView(AlertController.java:489) 
at com.android.internal.app.AlertController.installContent(AlertController.java:234) 
at android.app.AlertDialog.onCreate(AlertDialog.java:423) 
at android.app.ProgressDialog.onCreate(ProgressDialog.java:198) 
at android.app.Dialog.dispatchOnCreate(Dialog.java:394) 
at android.app.Dialog.show(Dialog.java:295) 
進度對話框的

我的代碼如下:

private void setUIToWait(boolean wait) { 

     if (wait) { 
      progressDialog=new ProgressDialog(LoginActivity.this); 
      progressDialog.setCancelable(false); 
      progressDialog.setCanceledOnTouchOutside(false); 
      progressDialog.getWindow().setBackgroundDrawable(new ColorDrawable(android.graphics.Color.TRANSPARENT)); 
      progressDialog.show(); 
      progressDialog.setContentView(new ProgressBar(LoginActivity.this)); 

     } else { 
      progressDialog.dismiss(); 
     } 

    } 

,我在上面的代碼有錯誤,我asynk任務,我其實叫

protected void onPreExecute() { 

      setUIToWait(true); 
     } 

我不知道什麼是問題..它在棉花糖週五工作文件,但現在每次它給我一個錯誤,當我的應用程序運行和Android設備上的進度對話框服務調用..請s請僅在我的代碼中使用我的任何解決方案。因爲我已經嘗試了所有的鏈接和他們的解決方案......

編輯:

如果我寫下面的代碼

private void setUIToWait(boolean wait) { 

       if (wait) { 
if(progressDialog==null){ 
        progressDialog=new ProgressDialog(LoginActivity.this); 
        progressDialog.setCancelable(false); 
        progressDialog.setCanceledOnTouchOutside(false); 
        progressDialog.getWindow().setBackgroundDrawable(new ColorDrawable(android.graphics.Color.TRANSPARENT)); 
        progressDialog.show(); 
        progressDialog.setContentView(new ProgressBar(LoginActivity.this)); 
     } 
       } else { 
        progressDialog.dismiss(); 
       } 

      } 

那麼就不會顯示任何錯誤,併成功執行,但ProgressDialog現在不顯示..

+1

傢伙不給投反對票。我真不明白爲什麼人們用來做這個...我想幫不投.... – Asmi

+0

放日誌,電子內如果和其他人和創建進度對話框之前檢查它是否解僱或不 – Steve

+0

你在這裏_progressDialog.setContentView(新ProgressBar(LoginActivity.this)); _/ – Piyush

回答

1

添加檢查空

else { 
      if(progressDialog != null) 
      progressDialog.dismiss(); 
     } 
+0

我也試過你的代碼..現在請檢查我編輯的代碼..它的工作文件,但不顯示progressdialog現在.. – Asmi

1

使用此代碼FO [R隱藏進度對話框:

else { 
if (dialog != null) { 
     if (dialog.isShowing()) { 
      Context context = ((ContextWrapper)dialog.getContext()).getBaseContext(); 
      if (context instanceof Activity) { 
       if (!((Activity) context).isFinishing()) 
        dialog.dismiss(); 
      } else 
       dialog.dismiss(); 
     } 
     dialog = null; 
    } 
} 
+0

我添加了你的代碼,但仍然錯誤來..請檢查我現在編輯的代碼..它的工作文件,但不顯示progressdialog現在.. – Asmi

+0

什麼確切的錯誤來了? –

+0

相同的上述錯誤..但如果我檢查ProgressDialog == null然後工作文件,但沒有顯示ProgressDialog只有它運行並開始另一個活動..請參閱我的編輯..現在工作正常..但爲什麼progressDialog沒有顯示 – Asmi