请问,如何关闭我的应用程序的特定活动?
例如我有活动:
A1> B1> C1
在C1中,我可以使用新的参数再次进入A活动,所以当我打开一个新的B(B2)时,我想关闭旧的活动:A1,B1,C1。
成为新结果:
A2> B2
在B2之后我可以回到A2,并从A2完成应用程序。
答案 0 :(得分:3)
您有两种方法可以做到这一点:
您可以使用single top等活动声明。或者,您可以使用start for result在活动之间传递数据。然后在onActivityResult上拨打finish();
答案 1 :(得分:0)
这应该适合你:
Intent i = new Intent(C.this, A.class);
i.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP | Intent.FLAG_ACTIVITY_CLEAR_TASK);
startActivity(i);
FLAG_ACTIVITY_CLEAR_TOP
将清除堆栈中的所有其他Activities
。 FLAG_ACTIVITY_CLEAR_TASK
@Dalmas此标志将导致在活动开始之前清除与活动关联的任何现有任务。
FLAG_ACTIVITY_CLEAR_TASK
所述的注意仅适用于API> = 11