0
我需要存儲自定義對象的array
以在Android中填充ListView
。我獲取數據來填充ListView
的Fragment
,這是NavigationDrawer
(碎片被頻繁替換)的一部分。下一次啓動Fragment
時,數據將被再次提取。即使當我去另一個Activity
並回來時,我也希望這些數據持續存在。 我不考慮使用database
,因爲我不需要在用戶重新啓動應用程序時恢復數據。只要用戶正在使用該應用程序,我就需要這些數據。在Android中存儲跨越片段和活動生命週期的數據
我已經考慮了以下方法:
- Singleton類
- 子類應用程序類
- 在片段/活動
保存實例狀態是否罰款在Application子類中存儲2000個對象的數組?有沒有更好的方法來做到這一點?
我不希望數據在用戶關閉並重新打開應用程序時保持不變。我只需要一種方法在Fragment和Activity生命週期中保存數據。 1->在fragment1中,此處獲取的數據和ListView已填充。 2-> Fragment1被相同Activity中的Fragment 2所取代(Fragment1被銷燬)。如果我回到Fragment1,我將不得不重新提取數據。 如果我移動到另一個活動並返回片段活動,我將不得不重新提取數據。 **我想要的只是一種在Fragment生命週期中存儲數據的方法,在退出應用程序時應清除數據。** – user3316561 2014-11-04 08:17:07
好的,那麼您應該看看「Non-Persistent Objects」部分在上面提到的鏈接中解釋。 – vkm 2014-11-04 08:42:45
我正在考慮做這樣的事情:http://www.devahead.com/blog/2011/06/extending-the-android-application-class-and-dealing-with-singleton/ 我需要存儲大小高達2000的自定義對象的數組。不是應用程序子類用於存儲少量的全局變量嗎? – user3316561 2014-11-04 08:49:34