【发布时间】:2014-01-21 06:48:02
【问题描述】:
您好,我有一个定义为 noHistory=true 的 LoginActivity。当用户被正确授权时,他将转移到我的应用程序的 MainActivity。当用户从主要活动中选择注销时,我会使用 FLAG_ACTIVTY_CLEAR_TOP 启动登录活动的意图。但是,当我现在从 LoginActivity 按下返回时,它会将我带回 MainActivity。
查看我的代码
logoutBotton.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View arg0) {
showLogoutDialog();
}
});
private void showLogoutDialog(){
AlertDialog.Builder dialog = new AlertDialog.Builder(this);
dialog.setTitle("Logout");
dialog.setMessage("Do you really want to logout?");
dialog.setPositiveButton("Logout", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface arg0, int arg1) {
Intent intent = new Intent(MainActivity.this,LoginActivity.class);
intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
startActivity(intent);
}
});
dialog.setNegativeButton("Cancel", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
dialog.dismiss();
}
});
dialog.show();
}
供您参考,LoginActivity 的 noHistory=true。帮我看看我的代码出了什么问题。我想在 LoginActivity 按下后关闭应用程序。
【问题讨论】:
-
您说您正在使用 FLAG_ACTIVTY_CLEAR_TOP,但在代码中,我没有看到该标志...并且还要确保在开始另一个 Activity 之前关闭对话框...
-
抱歉,这只是我的代码中的一个更改,我照原样复制了它。现在我将实际代码编辑为。
-
启动LoginActivity后即可完成MainActivity...
标签: android android-intent android-activity