2011-12-31 61 views
0

我目前正在開發一個android項目。我試圖在一個標準的java類中進行一次警告對話,以便代碼可以在整個應用程序中重新使用。從標準Ja​​va類返回AlertDialog

但是,從類返回alertdialog回活動,但是當我試圖表明它顯示了以下錯誤提示對話框:

Unable to add window -- token null is not for an application

下面是我用來創建代碼警報對話

public AlertDialog showAlertDialog(String message, Context context) 
    { 
     AlertDialog.Builder builder = new AlertDialog.Builder(context); 
     builder.setMessage("hello") 
      .setCancelable(false) 
      .setPositiveButton("Yes", new OnClickListener() { 

       @Override 
       public void onClick(DialogInterface dialog, int id) { 
        dialog.cancel(); 
       } 
      }); 
     AlertDialog alert = builder.create(); 
     return alert; 
    } 

下面是從Android那裏的活動我試圖顯示警告對話框

Common cla = new Common(); 
AlertDialog alert = cla.showAlertDialog("Hello", getApplicationContext()); 
alert.show(); 
代碼

常見的是類

+2

的名稱可能是你可以嘗試yourActivity.this而不是上下文的同時創造AlertBuilder。 – kosa 2011-12-31 16:55:18

+0

謝謝你的工作,你可以作爲答案,讓我可以接受它。 – Boardy 2011-12-31 17:08:00

+0

添加爲答案。 – kosa 2011-12-31 17:10:51

回答

1

請恰克您AlerDialogCreation邏輯AlertDialog.Builder builder = new AlertDialog.Builder(yourActivity.this);