我正在使用AndEngine进行游戏。我希望在用户点击图像时为用户提供选项,弹出一个警告对话框。我的代码如下。 这是方法
@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
答案 0 :(得分:2)
onCreateDialog(1).show();
错了。
请改为呼叫showDialog(1);
。
还可以像这样更改您的Builder:
AlertDialog.Builder builder = new AlertDialog.Builder(MyGame.this);
答案 1 :(得分:1)
不要使用onCreateDialog(1).show();
使用
showDialog(1)
代替
并用MyGame.this替换MyGame.this.getApplicationContext()
答案 2 :(得分: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;
}