例如:开始B,B开始C,A和C属于' Hello' -stack,B属于' World' -stack,当用户按下后退按钮时在活动C中,它将返回A. 注1:B表示很多活动,而不仅仅是一项活动, 如A开始B1,B1开始B2,B2开始B3 ......,Bn开始C. 注2:我需要Bs保持堆叠状态,直到C启动,用户按下 回到B3,它应该回到b2。
我实际上已经通过使用startActivityForResult实现了这个需求,我只是想知道是否有任何方法使用stack来实现它。
答案 0 :(得分:0)
从B开始活动C时,只需调用finish()。 然后在活动C中覆盖onBackPressed()。并添加代码以启动活动A.
答案 1 :(得分:0)
从活动A到活动B时,请按以下步骤操作:
Intent i=new Intent(ActivityA.this,ActivityB.class);
startActivity(i);
因为你想从B打开C但不希望B在堆叠中,所以请按以下步骤操作:
Intent i=new Intent(ActivityB.this,ActivityC.class);
startActivity(i);
ActivityB.this.finish();
当在C上反向按下时,你会得到A而不是B。
答案 2 :(得分:0)
intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP | Intent.FLAG_ACTIVITY_SINGLE_TOP); 要么 intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP | Intent.FLAG_ACTIVITY_NEW_TASK); 适合我。