2017-08-04 76 views
0

在我的應用程序中,有一個活動(活動1)帶有一些選項卡。從此活動可以啓動另一個活動(活動2),在完成任務後,應用程序將返回活動1. 此活動始終顯示Activity1中的第一個選項卡,但我希望看到在啓動Activity 2之前選擇了該選項卡。實際上,當我按下後退按鈕並且我想將其複製到Activity2-> Activity1意圖中時,這實際上會成功發生。我怎樣才能做到這一點,可能沒有將所選標籤從一個活動傳遞給另一個活動? 在此先感謝!返回到前一個活動中打開的特定選項卡

+0

MrCurious是在正確的軌道上,但太遠可能已經走到了一下。只要在準備好返回到Activity 1時調用finish()就可能得到你想要的結果。 – Gary99

回答

0

在你的活動2,這是不是你的主要活動(我猜) 你可以做一個後退按鈕作爲導航圖標和導航圖標中點擊你可以寫onBackPressed()this.finish()方法。 當您進入下一個活動時,您當前的Activity1將進入堆棧,並且在Activity2完成後再次進入堆疊狀態。 看到這樣

your Activity1{ 
.. 
//startActivity(Activity2) 
//some code to launch Activity2 
.. 
} 

在這裏您將活性1開始活性2並返回堆棧與當前顯示相同的狀態!

現在在你的活性2

Your Activity2{ 
    //any button which will trigger the Activity1 
    //inside it's onCLick(), add this 
    ... 
    onClick(View v){ 
     onBackPressed(); 
     finish(); 
     } 
    //so that your current Activity2 will get finished and lead you 
    //to the mainActivity i.e Activity1 

    } 
+0

我不確定我瞭解你的建議。在從Activity2到Activity1(它在一個片段中)的按鈕的onClick方法中,我在意圖getActivity()。finish()之後編寫的,但它沒有幫助。我應該用調用finish()方法來替換intent行嗎? – paola91

+0

再次檢查一下,我編輯了答案@ paola91 – MrCurious

+0

該解決方案本身有效,但我需要將一些數據從Activity2傳遞給Activity1。我試圖通過包而不是意圖來實現這一點,但似乎並不奏效(我的意思是,選項卡選擇保留,但數據不會從Activity2傳遞到Activity1)。有什麼建議麼? – paola91

相關問題