我讀過的有關Intents的所有內容都講述瞭如何使用它們來推送數據,或者從另一個活動開始一個活動。我想從已運行的活動中提取數據。將數據從一個選項卡活動拉到另一個選項
標籤版式教程http://developer.android.com/resources/tutorials/views/hello-tabwidget.html說明了我想要做的事情。 (我的應用程序正在進行一些工程計算,但教程代碼爲我的應用程序提供了一個很好的類比。)本教程創建了一個包含三個選項卡的應用程序,並且每個選項卡都託管一個單獨的活動。
要擴展本教程中的示例,假設我在「藝術家」選項卡/活動中選擇了一位藝術家。我希望能夠選擇相冊選項卡/活動並讓它顯示所有以該藝術家爲特色的相冊。
在我看來,我需要使用意圖來做到這一點。我找到的所有教程都假設我將在「藝術家」選項卡/活動中創建一個「查看專輯」按鈕,並且按下該按鈕將執行一個用於啓動相冊活動並傳遞artistName的Intent。
我不想創建那個按鈕。藝術家版面上的房地產是寶貴的,我有一個完美的專輯標籤,並且HelloTabWidget活動已經包含了創建專輯標籤的意圖。
此外,用戶會希望在專輯和藝術家之間跳來跳去,以改變藝術家的選擇,而這些標籤是完成此操作的絕佳方式。沒有必要使用另一個按鈕來複雜化UI。
因此,如果選擇「相冊」選項卡(或顯示「相冊」佈局),而不是讓藝術家活動START專輯並按PUSH artistName,我如何從藝術家活動中獲得相冊活動PULL artistName?
等效我可以從其他編程領域的想到:
全局變量。在Android設備上不鼓勵,對吧?如果他們確實存在,他們叫什麼?
一個吸氣劑,如
artistName = Artists.getArtistName();
。我覺得這並不容易。寫入和讀取文件 - 即大容量存儲器或非易失性存儲器。我不需要artistName值是永久的。每次用戶啓動應用程序時,它都會被重置爲空。
那麼它是如何在Android世界中完成的呢?我是否使用意圖 - 如果是,如何?