2011-12-23 6 views
2

私のゲームにはAndEngineが使用されています。私が画像をクリックすると、ユーザにオプションを与えたいという点で、一つの警告ダイアログがポップアップするはずです。私のコードは以下の通りです。ここ は方法AndengineにalertDialogを表示するには?

@Override 
protected Dialog onCreateDialog(int id) { 
    switch (id) { 
    case 1: 
     AlertDialog.Builder builder = new AlertDialog.Builder(MyGame.this.getApplicationContext()); 
     builder.setMessage("Hello"); 
     AlertDialog alert = builder.create(); 
     return alert; 
    default: 
     return null; 
    }  
} 

であり、私はこの文でこのメソッドを呼び出しています:

{ 
onCreateDialog(1).show(); 

}

と私は、このエラーメッセージ取得しています:

E/AndroidRuntime(672): android.view.WindowManager$BadTokenException: Unable to add window -- token null is not for an application 

答えて

2

onCreateDialog(1).show();が間違っています。 代わりにshowDialog(1);を呼び出してください。

そしてまた、このようなあなたのビルダーを変更:

AlertDialog.Builder builder = new AlertDialog.Builder(MyGame.this); 
+0

MyGame.thisでMyGame.this.getApplicationContext()を交換してください。どうもありがとうございました。 – Nimit

0
private boolean message = false; 

use in the method which u r using... 

if (!message) { 

      if (user.equals("") || user.equals(null)) { 
       ErrorText = "hello"; 

       username.requestFocus(); 
       isError = true; 


if (message) { 
      alertbox.setMessage(ErrorText); 
      alertbox.setNeutralButton("Ok", 
        new DialogInterface.OnClickListener() { 
         public void onClick(DialogInterface arg0, int arg1) { 
         } 
        }); 
      alertbox.show(); 
      isError = false; 
     } 
1

onCreateDialog(1).SHOWを()を使用しないでください。

使用

showDialog(1) 

代わり

ともそれは実際に働いていた

+0

ありがとう – Nimit

関連する問題