我正在调用Alert对话框froma handler.Alert对话框有2个按钮“再次播放”和“退出”。 我已经编写了代码来重新启动“再次播放”按钮。但是当我点击退出按钮时,我不知道如何完成应用程序。我不能从我的handler.given调用finish(),这是我的代码。请任何人帮助我......
private Handler handler = new Handler() {
public void handleMessage(Message msg) {
AlertDialog.Builder builder = new AlertDialog.Builder(_context);
builder.setMessage("Game Over !!!")
.setCancelable(false)
.setPositiveButton("Play Again",
new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog,int which) {
//thread.start();
Intent intent = new Intent ( _context , DroidzActivity.class );
_context.startActivity ( intent );
}
})
.setNegativeButton("Exit",
new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog,int which) {
dialog.cancel();
}
});
AlertDialog alert = builder.create();
alert.show();
}
};
答案 0 :(得分:1)
如果您希望完成上述代码,请尝试以下代码:
YourActivity.this.finish();
修改强>: 我建议不要破坏当前的活动,而是从以下方式开始:
Intent intent = new Intent ( _context , DroidzActivity.class );
intent.addFlags(Intent.FLAG_ACTIVITY_SINGLE_TOP);
_context.startActivity ( intent );
并在onNewIntent()
方法中处理“再次播放”操作。您需要在活动中覆盖它。
如需更多参考,请查看:http://developer.android.com/reference/android/content/Intent.html#FLAG_ACTIVITY_SINGLE_TOP
和
http://developer.android.com/reference/android/app/Activity.html#onNewIntent(android.content.Intent)