2011-09-16 88 views
1

在我的申請中,活動A有一個項目列表 關於選擇產品我去活動B,給出該項目的詳細信息和一個按鈕「選擇此項目」 這將去活動C. 在活動C這個選擇的項目被顯示,並有一個按鈕「選擇更多的項目」 點擊這我必須回到活動A,並重復相同的步驟。 當選擇另一個項目時,活動C應顯示這兩個項目。Android:從該活動中沒有完成呼叫的活動中獲得結果

因此,我認爲從行動C,我開始活動A,通過調用startActivityForResult()並將結果添加到現有的項目列表。 在這種情況下,我必須致電A的finish()來重新計算價值。 是實現

由於「選擇多個項目」這一權利的方式,可以點擊在現實生活中很多次,不會是最終殺死並啓動很多次同樣的活動 我已經設置啓動模式爲單任務活動

什麼是處理這種情況

非常感謝您的時間和幫助

回答

0

那麼,我會建議你可以採取一個靜態List或ArrayList並相應地工作。

1.)你可以採取一個公共靜態列表,並可以根據您的要求初始化,像這樣。

public static List<CartListClass> cartlist = new ArrayList<CartListClass>(); 

2)您可以使用任何Acitivity_name.cartList類訪問它並添加所需的信息。

3)現在,當你將來到Activity C你將有靜態列表中所有需要的信息,所以從那裏可以獲取和顯示產品的所需的詳細信息。

而且,靜態列表也會保留這些信息,當您從Activity A to Activity C中選擇另一個產品或項目時,它將被添加到上一個項目或產品下方的列表中。

UPDATE:

更好的方法是使用BroadCastReceiver更新值或使用Interface

+0

這是一個非常簡單的解決方案。非常感謝你 – png

0

我會在活動c。保存選定項目的標識符偏好的最佳途徑。 因此,在Activity C的簡歷中,我會檢查保存的首選項中有多少人,並將相應的數據加載到視圖中。