我有一个应用程序,其中我从活动A-> B-> C-> D移动。 现在我希望当我按下D上的按钮时,我的堆栈应该是A-> D。我已经从android API级别8到10完成了这个,但是在android 4.0上我有" 不保留活动"在后台杀死我的活动的设置,从而制作Intent.FLAG_ACTIVITY_CLEAR_TOP 和Intent.FLAG_ACTIVITY_NEW_TASK无用,因为我的活动a还没有活着。
我该如何处理这种情况。 任何帮助都是非常好的。
答案 0 :(得分:0)
不要保留活动我认为它是开发人员选项来模拟一个场景。
我用来清理堆栈的东西,在你的情况下只有活动B和C,就是在那些活动上注册广播,并在用户按下按钮时从D活动中启动一个意图。
public void onClick(View v){
Intent broadcastIntent = new Intent();
broadcastIntent.setAction("com.package.CLEAR_B_C");
sendBroadcast(broadcastIntent);
}
所以当B和C收到意图时,请调用finish()。