我已阅读此帖,但它不会解决我的问题。 Skip going back to direct parent activity when pressed backAndroid跳过堆栈的一些意图
假设我有一个从A到Z的意图列表,其中A是根。在任何这些意图中,我想提供一个“回到A”的功能,并且正常的“回到先前”应该保持。那么我怎么才能实现“回到A”功能呢?
因为A有很多互联网动作,而且速度有点慢,所以我不想再次新增一个A,最好的方法是进入堆栈并跳过其间的意图并直接显示A.
我已阅读此帖,但它不会解决我的问题。 Skip going back to direct parent activity when pressed backAndroid跳过堆栈的一些意图
假设我有一个从A到Z的意图列表,其中A是根。在任何这些意图中,我想提供一个“回到A”的功能,并且正常的“回到先前”应该保持。那么我怎么才能实现“回到A”功能呢?
因为A有很多互联网动作,而且速度有点慢,所以我不想再次新增一个A,最好的方法是进入堆栈并跳过其间的意图并直接显示A.
使用下面的代码从你想要调用堆栈中的A的位置开始。
Intent backToAIntent = new Intent(YourCurrentactivity.this,A.class);
backToAIntent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
startActivity(backToAIntent);
这个reference会给你更多关于你的需求的信息。
启动活动有一个特殊的标志:
FLAG_ACTIVITY_CLEAR_TOP
如果正在启动的活动在目前的任务已经运行,然后,而不是推出该活动的一个新实例,所有的在其上面的其他活动被销毁,这个意图通过onNewIntent()传递给活动的继续实例(现在在上面)
我没有得到这个:我在代码中使用了标志,但是当A被调用时,它仍然会继续在onCreate中,这正是我想要避免的。任何线索?我确信A在堆栈中。 – boreas
好的也必须添加FLAG_ACTIVITY_SINGLE_TOP。 – boreas
将android:launchMode =“singleInstance”添加到Activityman androidmanifest文件中的一个标记 – TNR