我已经阅读了类似讨论的一些答案,但没有一个直接解决这个问题。我有一个警告对话框,我想在它被解雇时做一些动作。无论它如何被解雇(按下按钮或触摸对话框外)。
我应该设置哪个听众? Dimiss听众或取消Lister或两者兼而有之?我想做一个活动finish()
所以如果两个方法一个接一个地运行,应用程序可能会崩溃。
此外,有没有办法阻止,所以用户不能关闭对话框(如重写解雇和设置错误)。
谢谢
答案 0 :(得分:2)
你可以有一个听众
dialog.setOnDismissListener(new OnDismissListener() {
@Override
public void onDismiss(DialogInterface arg0) {
// TODO Auto-generated method stub
finish();
}
});
这将完成你的工作..
如果你想对话不能解雇 你有
dialog.setCancelable(false);
答案 1 :(得分:1)
你应该在这里添加两个听众。在两个听众回调中,你可以调用你想要的动作。
并且,您可以将其设置为不可取消,请参阅 -
http://developer.android.com/reference/android/app/Dialog.html#setCancelable(boolean)