2

您好,我是 android 新手。我正在实现一些应用程序并且它有一些活动。假设如果我第一次启动应用程序,它会进入 A,然后在 C、D、E 之后进入 B .....(这里 A、B、C、D、E 是活动)。如果我按回按钮 E 然后它会像这样进行 D--> C--> B--> A。

现在,当我在 D 时,我想实现代码以退出/退出应用程序。我编写了以下代码,但此代码用于关闭当前活动并转到上一个活动。意味着转到 C。

结束();

然后我尝试使用以下代码,它工作正常并成功关闭当前应用程序并进入设备主屏幕。但是如果我想再次打开应用程序,那么它会从 D 表而不是 A 表启动。

  intent = new Intent(Intent.ACTION_MAIN);
    intent.addCategory(Intent.CATEGORY_HOME);
    intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
    startActivity(intent);

从这里复制

请帮我解决我的问题。

4

2 回答 2

4

使用这些标志来午餐活动并清除活动堆栈

Intent intent = new Intent(this, YourActivityD.class);
intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TASK | Intent.FLAG_ACTIVITY_NEW_TASK);
startActivity(intent);

请注意,FLAG_ACTIVITY_CLEAR_TASK 仅适用于 API 11 请参阅:http: //developer.android.com/guide/components/tasks-and-back-stack.html

于 2013-05-30T15:58:39.420 回答
0

尝试这个:

finish();
System.exit(0);
于 2013-05-30T15:52:55.587 回答