2016-11-22 31 views
0

所以這裏是問題,我執行A→B並從BI做B→C,現在當在CI中按下後退按鈕時想要返回到A.所以在啓動流程是A→B→C,但我想在啓動C時清除B,所以當從CI返回時按回到A. 我知道我可以從C和CLEAR_TOP啓動A,但是我正在尋找另一種替代方法是一個。onBackPressed()應該調用以前的活動的onBackPressed()

謝謝

+5

如何在'Activity' C中調用'Activity' B中的'finish()'?當然,在'startActivity'後面調用'finish()'。 –

+0

在B裏,啓動C後調用'finish()'。 –

+0

爲了確認我不得不問這個A,B和C是同一個活動中的片段嗎? – Nithinlal

回答

2

你可以調用finish();在你開始對B的意圖之後。

2

呼叫finish();傳球意圖你不想在回來按開啓活動後。

3

你只需要調用finish()

Intent intent = new Intent(this, NextActivity.class); 
startActivity(intent); 
finish(); 
1
Intent intent = new Intent(this, C.class); 
startActivity(intent); 
finish(); 

如果你啓動C活動後調用finish(),在B活動。您可以從堆棧中刪除B活動。所以如果你按下C鍵,你會看到一個活動。

2
//FROM A TO B 
    Intent A = new Intent(A.this,B.class); 
    startActivity(A); 

    //FROM B TO C 
    Intent B = new Intent(B.this,C.class); 
    startActivity(B); 
    finish(); 

    //FROM C TO A 
    onBackPressed(); you can go directly to A. 

希望這可以幫助你。