2016-03-01 74 views
1

我會抽象的,因爲不是關於代碼錯誤,我只想簡單地知道方法或者如果它是不可行的。Android,關閉只有一些活動

我有一個Android應用程序,從一個啓動畫面(然後殺死)開始,然後是主要活動(M)。然後用戶可以在4個活動(A,B,C和D)之間進行選擇,並且像他們是文件夾一樣探索它們。因此,從活動A開始,用戶可以打開活動A1,A2,A3等,然後打開活動A11,A12,A13,A21,A22等等。

但是,對於任何這些活性,在任何深度,用戶也可以移動到活動樹的另一分支(在深度1),即B或C或D.

的問題是隻有當我探索樹的同一分支時,我纔想保持父項活動的活力。因此,活動序列M→A→A2→A21→A213是可取的,但M→A→A2→A21→A213→B不是。我想知道如果(以及如何)打開活動B,可以一起關閉Ax活動,獲取堆棧實例M - > B。

+5

使用片段。很多活動聽起來很雜亂 – Marshall

+0

您無法控制哪些活動保持活躍狀態​​。無論如何,我同意@馬歇爾 – F43nd1r

回答

0

試試這個。
希望它有助於感謝。
從斧打算當到B調用等this.it將清除堆棧

Intent intent = new Intent(getApplicationContext(), B.class); 
intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP); 
startActivity(intent); 
+0

我認爲這不會有效,如果B不先於斧頭活動。無論如何,我選擇使用碎片,它工作正常。 – horcrux

+0

@horcrux快樂編碼 –