假设我有 4 个活动,A、B、C 和 D。活动 A 启动 B,B 使用 Intent 启动 C。单击活动 C 中的按钮启动 D。单击后退按钮或关闭活动 D 应该将我带到活动 A。我通过使用活动 C 中的 FLAG_ACTIVITY_CLEAR_TOP 和 FLAG_ACTIVITY_SINGLE_TOP 标志启动活动 A 来实现这一点。活动 A 中的 onNewIntent,我启动了活动 D 所以单击返回或关闭 D 将转到 A。
我在开始和退出活动时使用进入和退出动画。对于上述场景,退出动画在Activity CI结束后启动Activity A。这里的问题是因为我在动画之后启动Activity,所以当Activity C动画下来时,我看到了后面的堆栈,即Activity B。我不想在后台堆栈中看到 Activity B,而是看到 Activity A。不知道如何实现这一点。
有没有办法清除堆栈的一部分然后开始一个新的活动?