2012-04-05 18 views
0

私はAsyncTaskを実行した後、onPostExecuteに警告ダイアログを表示します。それは正常に動作しています。 しかし、doInBackground中にアクティビティが停止した場合、AsyncTaskの実行後、ダイアログが表示されている場合、アクティビティの再起動後に警告ダイアログが表示されず、アクティビティレイアウトも同じように暗くなります。Android:警告ダイアログが表示されない

public class CheckPin extends AsyncTask<String, Void, Integer>{ 
     @Override 
     protected Integer doInBackground(String... uri) { 
      publishProgress(); 
      //some code 
      return ret; 
     } 
     @Override 
     protected void onProgressUpdate(Void... values) { 
      super.onProgressUpdate(values); 
      showDialog(CHECKING_PIN); 
     } 
     @Override 
     protected void onPostExecute(Integer result) { 
      super.onPostExecute(result); 
      dismissDialog(CHECKING_PIN); 
      AlertDialog.Builder mBuilder = new     AlertDialog.Builder(EnterPin.this); 
        mBuilder.setMessage("Error") 
          .setCancelable(false) 
          .setPositiveButton(getString(R.string.yes), new DialogInterface.OnClickListener() { 
           public void onClick(DialogInterface dialog, int id) { 
            finish(); 
           } 
          }); 
         final AlertDialog mAlert = mBuilder.create(); 
         mAlert.show(); 
         break; 


     } 
    } 
+0

私はあなたがポスト – Khan

+0

はまだ問題に直面しているか、解決の実行からブレークを削除するには持っていると思います? –

答えて

0
AlertDialog.Builder mBuilder = new AlertDialog.Builder(CLASSNAME.this); 
mBuilder.setTitle("Error message") 
     .setMessage("You've encountered a problem.") 
     .setCancelable(false) 
     .setPositiveButton("Done", new DialogInterface.OnClickListener() { 
      public void onClick(DialogInterface dialog, int id) { 
       //do something...        
      } 
}) 
.create().show(); 
+0

動作していません。 – user1315180

+0

キャンセルを意味しますか?もしそうなら、onCancelled()メソッドをオーバーライドしてみてください。 – Mel

+0

これはうまくいきます。もう一度やり直してください。 – Xarialon

関連する問題