2017-09-15 3 views
-3

を保つ:完了すべての活動が、アプリは、このフローをした第1

1)ホーム - 他> - >アクティビティA - >アクティビティB - >アクティビティC - >アクティビティA - >アクティビティB - >アクティビティC 。

2)ホーム - >アクティビティC - >アクティビティB - >アクティビティC - >アクティビティA - >アクティビティB - >アクティビティC - >等

3)ホーム - >アクティビティD - >アクティビティB - >アクティビティC - >アクティビティA - >アクティビティB - >アクティビティC - >など

アクティビティBには、H以外のすべてのアクティビティを閉じる必要があるボタンがありますオームと最初の活動。それを行う最善の方法は何ですか?

A、B、Cに同じtaskAffinityを与え、finishAffinity()を使用すると、すべてのアクティビティが閉じられます。

答えて

1

MainActivity以外のすべてのアクティビティを閉じてotherActivityを開きたい場合は、これを試してみてください。

Intent intent = new Intent(this, MainActivity.class); 
intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP | Intent.FLAG_ACTIVITY_SINGLE_TOP); 
startActivity(intent); 
+0

finishAffinity()を使用しています。 – Ankita

0

ちょうどあなたが他のケースを持っているなら、あなたはこのためにonActivityResult使用する必要があります開始、単純な活動

Activity.finishAffinity() vs Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_CLEAR_TASK 

https://stackoverflow.com/a/33517795/5069323 
関連する問題