其他帖子都沒有提及。當然,他可以將列表存儲爲實例成員,並通過getter和setter訪問它,但是對象擁有哪些成員?
你可以使用靜態作爲已經建議,但有一個更好的辦法...只是掛了你的應用程序類的。現在創建一個擴展Application
類,並添加實例有,
public class MyApplication extends Application {
private List<Map<String, String>> items = new ArrayList<Map<String, String>>();
public List<Map<String, String>> getItems() {
return items;
}
public void setItems(List<Map<String, String>> items) {
this.items = items;
}
}
配置應用程序類到您的清單,
<application
android:name=".MyApplication"
...
,你們的活動或服務,只要做到這一點,
List<Map<String, String>> items = ((MyApplication)getApplication()).getItems();
從你的片段,爲此,
List<Map<String, String>> items = ((MyApplication)getActivity().getApplication()).getItems();
好的是,這個對象和你的應用程序有相同的生命週期。它存在於您的應用程序的任何部分處於活動狀態,並且隨應用程序一起GC'd。
我喜歡這樣,tbh我不是一個機器人,所以這可能不是我會想到的。 – 2012-07-25 20:10:11
如果我想要兩個全局列表...例如項目A和項目B,該怎麼辦? – 2012-07-25 20:13:43
只需添加另一個名爲'itemsA'的實例成員,並添加一個相應的getter'getItemsA()'和setter'setItemsA()'。 – 2012-07-25 20:42:06