只是,如何關閉我的應用程序的特定活動?關閉一個具體的活動android
例如我有活動:
A1> B1> C1
而在C1我可以用新PARAMS再去A活性,所以當我將打開一個新B(B2),我要關閉較早的活動:A1,B1,C1。
作爲新的結果:
A2> B2
我在哪裏可以B2之後,回到A2,並從A2完成的應用程序。
只是,如何關閉我的應用程序的特定活動?關閉一個具體的活動android
例如我有活動:
A1> B1> C1
而在C1我可以用新PARAMS再去A活性,所以當我將打開一個新B(B2),我要關閉較早的活動:A1,B1,C1。
作爲新的結果:
A2> B2
我在哪裏可以B2之後,回到A2,並從A2完成的應用程序。
你有兩種方法可以做到這一點:
您可以使用活動的聲明,如single top。或者您可以使用start for result在活動之間傳遞數據。然後在onActivityResult只需致電finish();
是的,我想過,我正在檢查其他解決方案,謝謝 – 2013-04-25 15:02:39
這應該爲你工作:
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
您必須在開始新活動後立即在現有活動中調用完成方法。 – ararog 2013-04-25 14:49:55
你正在接近這個問題錯了。查找android'launchMode'。 – Phil 2013-04-25 14:52:39