2012-03-31 119 views
3

我试图表现出对一个的AsyncTaskAlertDialog在onPostExecute没有显示

@Override 
protected void onPostExecute(HttpResponse response) { 
if (response == null) { 
      Log.d(TAG, "onPostExecute, response == null"); 
      AlertDialog.Builder builder = new AlertDialog.Builder(ConfirmPhoneNoCode.this); 
      builder.setMessage("Are you sure you want to exit?").setCancelable(false) 
        .setPositiveButton("Yes", new DialogInterface.OnClickListener() { 
         public void onClick(DialogInterface dialog, int id) { 
          ConfirmPhoneNoCode.this.finish(); 
         } 
        }).setNegativeButton("No", new DialogInterface.OnClickListener() { 
         public void onClick(DialogInterface dialog, int id) { 
          dialog.cancel(); 
         } 
        }); 
      AlertDialog alert = builder.create(); 
     } else { 
      int responseCode = response.getStatusLine().getStatusCode(); 
      String message = response.getStatusLine().getReasonPhrase(); 
      Log.d(TAG, "Response Code: " + String.valueOf(responseCode)); 
      Log.d(TAG, "Message: " + message); 
     } 
    } 

onPostExecute方法的对话框我收到日志消息

03-31 23:02:42.912: D/ConfirmPhoneCode(21966): onPostExecute, response == null 

这意味着

if(response == null) is executed but AlertDialog box don't show-up. 

如果有人能帮助我,我将不胜感激。

在此先感谢。

回答

3

alert.show();我认为你必须添加它...

AlertDialog alert = builder.create(); 
alert.show(); 
+0

它工作。谢谢 – 2012-03-31 17:54:35

1

看起来不错给我。你打电话给alert.show()吗?

+0

它的工作。我很感激。 – 2012-03-31 17:58:00