如何通過Bundle實例將ArrayList<ArrayList<HashMap<String, String>>>
的實例從一個Android活動傳遞到另一個活動?Android和通過Bundles傳遞嵌套ArrayList
(我可以用JSON字符串。我想知道是否有更好的方法。)
提前好心感謝你。
如何通過Bundle實例將ArrayList<ArrayList<HashMap<String, String>>>
的實例從一個Android活動傳遞到另一個活動?Android和通過Bundles傳遞嵌套ArrayList
(我可以用JSON字符串。我想知道是否有更好的方法。)
提前好心感謝你。
您可以將它作爲額外的Intent傳遞給您用來啓動新活動。由於ArrayList
實現了Serializable
,因此您無需執行任何特殊操作即可將其提供給Intent.putExtra()
。
通常,通過Intents在活動之間傳遞太多或太大的數據並不好。最好將它們集中存儲在某個地方,並傳遞一個輕量級標識符或類似的東西,這樣其他活動就可以從商店中檢索它們。
E.g.您可以使用Application類來存儲這些數據。只要您的應用程序正在運行,應用程序類就始終可用。你可以通過調用getApplication()方法從每個活動中獲得它。
ya通過Arraylist作爲對象是一個好方法..不需要json和所有...所以1 up .. – 2011-03-03 07:15:07
@ Ganapathy:對 - 我明白了。謝謝,並且也提供了完整的答案。 – SK9 2011-03-03 08:52:56
請注意序列化效率非常低。這個數據結構有可能包含很多元素,在這種情況下,序列化的低效性可能真的會讓你咬牙切齒。我強烈建議不要這樣做。 – hackbod 2011-03-03 10:07:39