2011-06-24 35 views
0

我有兩個活動A1和A2,在發出一些事件時,我正在從A1調用A2(通過intent)。 現在在A2內我正在發射一些事件,並基於此我再次調用A1並通過意圖傳遞數據)。再次調用它後維持活動狀態

現在的問題是,當A1從A2調用數據時,A1活動用自己的新狀態加載,但是我想在A1第一次加載時保持其舊狀態。間接我不想打電話創造。

到目前爲止我試圖按照A1活性代碼,其在A1,其負載本身

public static void show(Context context , int index)  
    { 
      final Intent intent = new Intent(); 
      intent.setAction(MC_MY_ACTION); 
      intent.putExtra("routeIndex", index); 
      context.startActivity(intent); 

    } 

從A2我打電話A1從onOptionsItemSelected如下以及使所述selectedMenuInde​​x一個靜態方法

A1.show(this,selectedMenuIndex);  
+0

要澄清,當A2啓動A1的意圖時,您希望您的總活動堆棧看起來像這樣? 'Activity1(bottom)>> Activity2 >> Activity1(Top,visible)'或者你想讓Activity2回到原來的Activity1?或者讓Activity2現在被埋在堆棧中,但將舊的Activity1帶到新的數據前面? – yep

+0

我正在等待Acitvity2回到原來的Acivity 1(初始狀態是初始狀態) – Hunt

+0

然後只需調用finish();在活動2.安卓做的其餘 – Eric

回答

0

如果你的活動已完成()'d,你不會避免再次通過onCreate() - 但是沒有必要擔心這一點。只要讓你的onCreate()檢查它的intent extras的內容,如果沒有,那麼遵循你的默認初始化,但如果有額外的,讓它們攜帶足夠的狀態數據,這樣你就可以回到以前的狀態。

相關問題