2011-12-29 62 views
2

我用意圖去其他活動問題帶回並進入下一個活動在android系統

這是我的方式:活動甲 - >乙 - 「ç - > d - > E.

當我按背,去ē - > d - > C-> B-> A

,但在活動E,當按下後退,我想回來到C,所以我用

mIntent.setClass(E.this, C.class); 
startActivity(mIntent); 

我的問題是:當我從E來到C時,我按回來,它回到E.但是我想回來到B像C-> B-> A.

在我看來,當我在上面的代碼中使用,我創建新的活動C,所以我不能再回活動B

哪有我解決這個問題?

謝謝你這麼多

+0

當你在d,然後按後退按鈕的問題是會發生什麼? – Flo 2011-12-29 18:05:50

+0

你是否覆蓋後退按鈕? – Ahmed 2011-12-29 18:13:09

+0

D回到C ..........我覆蓋後退按鈕 – 2011-12-29 18:13:46

回答

2

呼叫finish()在d當您移動到E,這會從棧中刪除,並導致電子郵件去C.你的籌碼看起來像E,C,B,A,因爲D被刪除。

+0

但是,如果我在E上,當我想去B.我必須完成()D和C.那麼當我在D上並按下後退按鈕時會發生什麼? - >去B,而不是C? – 2011-12-29 18:19:24

+0

如果在移動到B時調用C完成,那麼點擊C中的後退按鈕會將您帶到B.基本上,如果您不希望在應用程序中備份時活動在堆棧上,請致電完成當你打電話給下一個活動時。 – Pyrodante 2011-12-29 18:25:49

+0

當我有A-> B-> C - > D - > E,如果我用你的方法看起來像A-> B-> C(完成) - > D(完成) - > E。我可以從E - > B返回。但當我在D時(在完成之前並致電E),我按返回,轉到B,而不是C? – 2011-12-29 18:39:31

0

嘗試添加以下內容到你的AndroidManifest.xml文件,android:noHistory="true"在d活性標記屬性

+0

但是如果從D調用其他活動F?所以F不能回覆到D – 2011-12-29 18:56:07

+0

你可以編輯你的問題來顯示活動從A到F的流程,如果條件是? – 2012-01-01 05:27:26