Android - 从Main-Method调用时不显示AlertDialog

时间:2013-01-21 17:29:13

标签: android show alertdialog main

我遇到了一个AlertDialog问题。当我把它放在Button的onClick-Listener中时,代码运行良好,但是当我把它放在main-method的末尾时,它根本不起作用。

这是显示AlertDialog的方法:

void showMaths(){
    AlertDialog.Builder alert = new AlertDialog.Builder(LabyRiddle.this);

    alert.setTitle("Title");
    alert.setMessage("Message");

    // Set an EditText view to get user input 
    final EditText input = new EditText(LabyRiddle.this);
    alert.setView(input);

    alert.setPositiveButton("Ok", new DialogInterface.OnClickListener() {
    public void onClick(DialogInterface dialog, int whichButton) {
      }
    });

    alert.setNegativeButton("Cancel", new DialogInterface.OnClickListener() {
      public void onClick(DialogInterface dialog, int whichButton) {
      }
    });

    alert.create();  // <== Doesn't make any difference whether its here or not
    alert.show();
}

我只是希望m​​ain方法运行,并且在结束时,警报出现......

但它没有出现,并且它不会崩溃,甚至不会给出错误报告。

或者在主方法完成后是否还有其他可能显示警报?

谢谢,祝你有愉快的一天!

奥利弗

2 个答案:

答案 0 :(得分:2)

我想你需要打电话

alert.create().show();

在致电show();之前,您必须使用create();方法

从构建器创建对话框

答案 1 :(得分:0)

你忘了叫这行

 alert.create();

之前

alert.show();

有关警报对话框的更多信息,请参阅此链接 http://developer.android.com/guide/topics/ui/dialogs.html#AlertDialog