我是Android開發的新手,我在理解如何處理Android中的普通Java對象/變量/容器時遇到了一些問題。在完成AsyncTask或離開活動後,它們似乎不再可用。讓ArrayList在離開AsyncTask後可用於其他類/活動
例如:通過AsyncTask我得到一些數據,將它從另一個類推入ArrayList(工作很好 - 我可以在我的mapview上看到結果;-)),並希望使其可用於其他類/活動。
我該如何處理這個問題/在Android中有什麼好的做法呢?
預先感謝您。
我是Android開發的新手,我在理解如何處理Android中的普通Java對象/變量/容器時遇到了一些問題。在完成AsyncTask或離開活動後,它們似乎不再可用。讓ArrayList在離開AsyncTask後可用於其他類/活動
例如:通過AsyncTask我得到一些數據,將它從另一個類推入ArrayList(工作很好 - 我可以在我的mapview上看到結果;-)),並希望使其可用於其他類/活動。
我該如何處理這個問題/在Android中有什麼好的做法呢?
預先感謝您。
我該如何處理這種/什麼是一個很好的做法Android爲那個 的事?
如果你想通過活動傳遞原始類型和對象,你有幾個選擇:
的Intent
putExtra()
方法的使用 - 你可以通過基本數據類型和對象以及
但是,如果您想要通過活動傳遞對象,則必須執行Serializable
或Parcelable
接口。
他們似乎是在完成一個或的AsyncTask離開 一個活動後不再可用。
是的。如果你有變量,那麼在Activity類中定義和初始化的對象只要Activity存在,它們就會一直存在。所以,如果你想堅持的一些數據,你再次有幾個選項:
你能堅持原始和引用類型(int,雙,字符串 等),它們作爲鍵值對工作SharedPreferences。
對於SQLite
其中 對象會以表格,其中對象的屬性是相等 在數據庫列存儲,您可以創建自己的「複製」對象。
Serializable
接口,則可以將它們序列化爲 二進制文件,以及何時將其反序列化以供使用。在這裏看到的方式來存儲數據 http://developer.android.com/guide/topics/data/data-storage.html
這第一個答案顯示瞭如何通過活動之間的數據爲例 How do I pass data between Activities in Android application?
您可以隨時使用全局變量。 – vorrtex