当在android中调用一些新活动时,如何从堆栈中删除流中的所有活动

时间:2012-10-04 10:25:31

标签: java android android-activity

我的Android应用程序有问题,它在设置屏幕中具有注销功能。 当我们退出时,它会打开登录屏幕。但是当我按下后退按钮然后它显示设置屏幕页面,这不是必需的(因为它需要我在没有登录的情况下进入应用程序)。我使用以下代码,但它无法正常工作。因为在注销时LoginActiviy不存在。

Intent intent= new Intent(HomeSetting.this,LoginActivity.class);
                    intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
                    startActivity(intent);

请建议我一些解决方案,即LoginActivity将调用作为一个新的Activity,历史记录中的所有活动都将被销毁。

2 个答案:

答案 0 :(得分:0)

您可以将清单文件中Activity的noHistory属性设置为true。因此,当它转到后台时,它将从Activity satck中删除。

答案 1 :(得分:0)

为避免这种情况,您应该按如下方式设置标志:

     Intent intent= new Intent(getApplicationContext() , LoginActivity.class);
                intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
                startActivity(intent);