我希望在用户按主屏幕上的按钮时显示弹出窗口。但它不起作用,并且没有错误。我使用此代码在滑块菜单上工作
public void onBackPressed() {
// TODO Auto-generated method stub
super.onBackPressed();
AlertDialog.Builder build = new AlertDialog.Builder(this);
build.setTitle("Confirmation");
Log.d("aaaaa", "msg");
build.setMessage("Are you sure, you want to exit ?");
final AlertDialog alertDialog = build.create();
alertDialog.show();
build.setPositiveButton("Ha (Yes)", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
// TODO Auto-generated method stub
alertDialog.dismiss();
finish();
}
});
build.setNegativeButton("Na (No)", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
// TODO Auto-generated method stub
alertDialog.dismiss();
}
});
答案 0 :(得分:0)
调用super.onBackPressed()
表示“正常处理后退按钮”(即完成活动)。
如果你想拦截它并且显示一个对话框(就像是这样的话)就不要调用它就足够了。
答案 1 :(得分:0)
在设置是/否按钮之前显示对话框。你需要把alertDialog.show();在末尾。也摆脱了super.backPressed()。您不需要它,因为您覆盖了这个原始功能。