希望Android应用程序等到用户按下按钮后再继续

时间:2011-12-19 02:31:29

标签: android

我有一个Android游戏,当用户获胜时,它会显示一个对话框,询问他们是否想再玩一次。如果他们说“不”,则应用程序退出,如果他们说“是”,则启动另一个游戏。问题是在显示对话框时开始新游戏,而不是等待用户按下按钮。代码是这样的:

if (won) {
    showDialog(DIALOG_WON_ID);
    imageAdapter.initializemThumbIds();  // this starts a new game
}

我不希望在对话框被解除之前执行start-new-game行。

2 个答案:

答案 0 :(得分:2)

拨打此电话

imageAdapter.initializemThumbIds();

进入“是”按钮点击事件。

编辑:

这样的事情:

AlertDialog.Builder builder = new AlertDialog.Builder(this);
builder.setMessage("Would you like to play again?")
       .setCancelable(false)
       .setPositiveButton("Yes", new DialogInterface.OnClickListener() {
           public void onClick(DialogInterface dialog, int id) {
               imageAdapter.initializemThumbIds();
           }
       })
       .setNegativeButton("No", new DialogInterface.OnClickListener() { 
           public void onClick(DialogInterface dialog, int id) { 
               // Exit the game
           } 
       });
AlertDialog alert = builder.create();   
alert.show();

答案 1 :(得分:1)

您当前的代码会显示该对话框并立即转到showDialog()后面的行。您要做的是将启动新游戏的代码移至DialogInterface.OnClickListener()中实现的Dialog的{​​{1}}代码。