我正在用多個屏幕創建一個應用程序,用戶將不得不瀏覽。具體而言,我目前正在對一組活動必須聯繫在一起如下:按BACK按鈕時返回到正確的活動狀態?
- 主要活動 - >點擊一個按鈕導致「CreateCharacterActivity」 - >點擊一個按鈕導致「CharacterMainActivity」
- 「CharacterMainActivity」上的BACK按鈕應該返回MainActivity,而不再次顯示CreateCharacterActivity。
- 此行爲應該與應用程序的其他區域類似,但它應該恢復BACK按鈕導致的活動在暫停之前處於的狀態。
所以爲了簡化,我想這樣。
- 活性A - >活動B - >活動Ç
- BACK按鈕使活性C返回到活動A不經過活動B.去
我試圖這樣做:
@Override
public void onBackPressed() {
super.onBackPressed();
Intent intent = new Intent(this, MainActivity.class);
startActivity(intent);
finish();
}
但是這只是調用一個MainActivity的新實例。當我在MainActivity實例上按BACK時,它將我帶回CharacterMainActivity。
我該如何做到這一點?我假設它涉及訪問活動堆棧?
謝謝!我不知道爲什麼我之前沒有想到... –
如果我在活動A中有一個對象的引用,然後啓動活動B並將該對象作爲Parcelable傳遞,然後在該活動中修改它並按BACK返回到活動A,A將對該對象的引用修改爲它在B中的位置嗎? –