0

我有一个LoginActivity作为我的启动器屏幕。而SettingsActivity作为我的fifth screen.

我有一个logout button设置屏幕。On clcik这个按钮,我怎样才能从活动堆栈 中Screen-1 (i.e LoginActivity)清除所有剩余的活动?(i.e 2nd, 3rd, 4th)

注意:我已经完成LoginActivity但没有剩余的活动。提前致谢

4

1 回答 1

2

很简单,在您的注销按钮上设置一个 onclick,然后将其添加到您的意图中:

Intent newIntent = new Intent(this, login.class);

    newIntent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);

    startActivity(newIntent);
    finish();

这应该清除 login.class 上方的整个堆栈

如果您今天感觉很有趣,请添加

    newIntent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP | Intent.FLAG_ACTIVITY_SINGLE_TOP);

这将摆脱 S3 上烦人的“显示 android 主屏幕”问题

于 2012-09-27T12:56:50.913 回答