假设我在活动A中。我想启动活动B,但如果用户按下活动B,我希望他们进入活动C。
因此,即使用户看到A->B,我也希望它是A->C->B。
我知道我可以使用TaskStackBuilder
并综合创建ABC堆栈。然而,有时A不仅仅是一个活动;可能有一些用户以前做过的导航,我不想丢失,用TaskStackBuilder
综合重建会有太多麻烦。
有没有一种方法可以使用TaskStackBuilder
来保持当前的反向堆栈?或者,在开始另一个活动之前,有没有其他方法可以将一个活动综合添加到后堆栈中?
您可以在活动B
中覆盖onBackPressed()
,从中启动活动C
并完成活动B
。从用户的角度来看,他将看到:
A->B->(背压事件)->C
背面包装:
A->AB->AC
@Override
public void onBackPressed() {
super.onBackPressed();
Intent intent = new Intent(this, ActivityC.class);
startActivity(intent);
finish();
}