如何完成最多一项特定活动的活动?

Fig*_*gör 4 android back activity-finish android-activity

例如,我打开了活动 A、B、C、D。

我想完成 D 和 C 并返回 B。

我不想打开带有明确任务和新任务标志的活动 B。我也想保留活动 A,以便用户可以使用后退按钮从 B 返回到 A。

我怎样才能做到这一点?

Kam*_*abu 5

Intent intent = new Intent(getApplicationContext(), B.class);
intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
startActivity(intent);
Run Code Online (Sandbox Code Playgroud)

在 B 活动中:

@Override
public boolean onKeyDown(int keyCode, KeyEvent event)
{
    if ((keyCode == KeyEvent.KEYCODE_BACK))
    {
        finish();
    }
    return super.onKeyDown(keyCode, event);
}
Run Code Online (Sandbox Code Playgroud)