我正在製作一個帶有多個選項卡的Android應用程序,並且我遵循了指示我進行多項活動的開發者教程。第一個標籤上有紡紗機。Android:通過選項卡跨越選項卡
如何將由spinners選擇的值傳遞給其他選項卡?
謝謝你的幫助。
我正在製作一個帶有多個選項卡的Android應用程序,並且我遵循了指示我進行多項活動的開發者教程。第一個標籤上有紡紗機。Android:通過選項卡跨越選項卡
如何將由spinners選擇的值傳遞給其他選項卡?
謝謝你的幫助。
您可以使用SharedPreferences來完成此操作。只要SharedPreference
在應用程序中的任何位置發生更改,您也可以利用OnSharedPreferenceChangeListener在其他Activities
中獲得回調。
使用SharedPreferences
將確保數據一致和持久。從API docs:
修改的喜好必須 經歷一個SharedPreferences.Editor 對象,以確保優先級值 保持在一致的狀態和 控制時,他們都致力於 存儲。
另一種快速和骯髒的解決方案將與靜態類合作,如:
public class OptionHelper
{
private static String option;
public static void setSelectedOption(String option)
{
//...
}
public static String getSelectedOption(){
//...
}
}
也許不推薦使用。 :)
另一種解決方案是使用Application類。
在我的應用我有一個需要到處傳遞Account對象 - 我把它Parcelable
:
https://github.com/pilhuhn/ZwitscherA/blob/master/src/de/bsd/zwitscher/account/Account.java#L11
,只是把它添加到Intents
https://github.com/pilhuhn/ZwitscherA/blob/master/src/de/bsd/zwitscher/TabWidget.java#L83
和在接收器中讀回:
https://github.com/pilhuhn/ZwitscherA/blob/master/src/de/bsd/zwitscher/OneTweetActivity.java#L76
也許不是最好的選擇。但我真的不認爲靜態單例最好(可能來自我的Appserver背景),而且應用程序在Android文檔中被標記爲「不使用」,所以我沒有看到明顯的更好的解決方案。 根據您的操作,首選項使用情況可能也不會「很好地擴展」。
嗨,Heiko有趣的發現應用程序類在Android文檔中被標記爲「不要使用」。請您指出我的方向,我找不到那個。我認爲它是一種維護應用程序全局的方法州。 – syam 2011-01-24 04:44:18
我已經使用SharedPreferences實現了一個解決方案。感謝您的想法和鏈接。 – Gilbert 2011-01-28 00:34:27