簡體   English   中英

Android在堆疊中的另一個活動之前開始一個新活動,並清除舊活動之前的活動

[英]Android start a new activity before another activity in backstack and clear activities above old activity

我遇到了活動后退問題。 假設我的Backstack中有5個活動:如活動A,活動B,活動C,活動D和活動E。在某個時候,當我按下活動E的后退按鈕時,我希望用戶轉到另一個活動G。必須將活動G放在活動B之后,因此我希望將活動C和活動D從后台刪除(否則用戶將轉到活動D)。

Current situation A --> B --> C --> D --> E

Preferred situation A --> B --> G

現在我明白了,我可以用FLAG_ACTIVITY_CLEAR_TOP當活動摹會一直在堆棧中。 但是活動不是。 我也不想使用FLAG_ACTIVITY_NEW_TASK因為那樣活動A和B也將消失。

另一種方法是

android:noHistory="true"

在活動C和活動D的清單中顯示,但這會使用戶每次用戶在活動C或D中按下返回按鈕時都返回活動B。

誰能指出我正確的方向?

You can try below

C ----startActivityForResult----------> D ---startActivityForResult--> E

handle onActivityResult with result accordingly to finish Activities, make sure its chained action calls

當您從C-> D開始活動時,您會插入finish();。

Intent intent = new Intent(C.this,D.class);

startActivity(意向);

完();

D-> G的相同方法是可能的。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM