2013-01-17 58 views
0

我已阅读此帖,但它不会解决我的问题。 Skip going back to direct parent activity when pressed backAndroid跳过堆栈的一些意图

假设我有一个从A到Z的意图列表,其中A是根。在任何这些意图中,我想提供一个“回到A”的功能,并且正常的“回到先前”应该保持。那么我怎么才能实现“回到A”功能呢?

因为A有很多互联网动作,而且速度有点慢,所以我不想再次新增一个A,最好的方法是进入堆栈并跳过其间的意图并直接显示A.

回答

0

使用下面的代码从你想要调用堆栈中的A的位置开始。

Intent backToAIntent = new Intent(YourCurrentactivity.this,A.class); 
backToAIntent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP); 
startActivity(backToAIntent); 

这个reference会给你更多关于你的需求的信息。

+0

我没有得到这个:我在代码中使用了标志,但是当A被调用时,它仍然会继续在onCreate中,这正是我想要避免的。任何线索?我确信A在堆栈中。 – boreas

+0

好的也必须添加FLAG_ACTIVITY_SINGLE_TOP。 – boreas

+0

将android:launchMode =“singleInstance”添加到Activityman androidmanifest文件中的一个标记 – TNR

0

启动活动有一个特殊的标志:

FLAG_ACTIVITY_CLEAR_TOP

如果正在启动的活动在目前的任务已经运行,然后,而不是推出该活动的一个新实例,所有的在其上面的其他活动被销毁,这个意图通过onNewIntent()传递给活动的继续实例(现在在上面)