我有主要活动,可以打开自定义对话框。 Dialog有一个按钮,可以将您带回主要活动。现在,当我打开对话框时按下后退按钮我要退出应用程序而不是进入主活动,但后退按钮只是关闭对话框&带我去主要活动。 我尝试过使用进程kill,
android.os.Process.killProcess(android.os.Process.myPid());
但没用。请帮忙。
答案 0 :(得分:0)
将onCancelListner设置为对话框,并在finish()
方法中调用onCancel
这是一个样本
AlertDialog.Builder b = new AlertDialog.Builder(this);
b.setOnCancelListener(new DialogInterface.OnCancelListener() {
@Override
public void onCancel(DialogInterface dialogInterface) {
finish();
}
}).setTitle("hello").setMessage("messgae 1").setPositiveButton("ok",new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialogInterface, int i) {
}
}).setNegativeButton("cancel",new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialogInterface, int i) {
//call finish() if needed
}
}).create().show();
答案 1 :(得分:0)
我不是100%肯定,但你可以覆盖Activity的onBackPressed方法并在那里调用finish。只需要一些布尔值来检查Dialog当前是否正在显示。如果是,则完成活动。
答案 2 :(得分:0)
您应首先使用Dialog
按finish();
按钮点击完成您的活动,然后在您活动的onDestroy()
中使用以下代码。
@Override
protected void onDestroy() {
// TODO Auto-generated method stub
android.os.Process.killProcess(android.os.Process.myPid());
super.onDestroy();
}