2012-02-17 61 views
0

我有一個形狀 - 三角形,正方形,矩形,五角星形列表。這些形狀通過文本字段輸入,並調用以在後面顯示文本。可能會有大約200個條目。什麼本地存儲是最好的Android列表

這是如何完成的?我已經看到有很多方法,但是我無法通過描述哪一個最好?

+0

存儲是否需要持久存儲?我的意思是,你需要在應用程序的不同用途之間保存的列表嗎? – jmcdale 2012-02-17 02:11:45

回答

0

你可以看看ArrayList。它像一個Vector一樣工作。一種存儲數據的好方法。 如果你想將它存儲到數據庫中,你可以通過Android中的內置數據庫SQLite來完成。

+0

如果我不得不編輯和檢索數據來改變它,數據庫會更好嗎?並刪除它?也許我該說的那部分... – user963070 2012-02-17 01:53:02

+0

是的,你可以這樣做: 你的數據將被存儲在數據庫中。當您的程序運行時,您可以檢索所有數據,並將它們顯示在數組列表中。當你進行更新時,所有信息都將在數據庫中更新。所以下次你運行你的程序時,更新的數據將會在那裏。數據庫可能是保持數據更新的好方法。 – DroidMatt 2012-02-17 07:56:48

0

如果您有最大尺寸或確切知道有多少形狀,您應該使用Shape []。 如果您不知道需要存儲多少個圖形,則應使用列表。

如果您希望在退出應用程序時保存這些項目列表,並在用戶重新啓動時再次加載,請使用sqllite。不要一直使用sqllite,一般你想在啓動時從你的數據庫加載數據庫,並在關閉時寫入數據庫。

+0

我需要在每次打開程序之間保存信息。爲什麼我不應該使用SQLlite來滿足我所有的數據庫需求?列表是否在程序關閉的情況下生存? – user963070 2012-02-17 02:55:53

+0

否,當應用程序被移除時,列表和數組都將從內存中清除。如果您希望數據在程序關閉後生存,則必須寫入磁盤。 SQLLite可能是寫入磁盤的最快和最好的方式。你不想一直寫,因爲讀寫數據庫比讀/寫內存要花費更多的時間。您希望用戶在內存中執行他們所需的一切,然後將內存中的內容保存到磁盤中。 – edthethird 2012-02-17 03:13:04

+0

因此,當程序啓動時,我爲表中的所有相應條目創建列表,更改列表,然後在程序關閉時將所有內容存儲在表中?這可能是很多東西進入和退出表格。 – user963070 2012-02-17 03:34:41

0

static final ArrayList> arraylistobject = new ArrayList>();

私人無效yourFunctionName()

{

HashMap<String,Object> temp = new HashMap<String,Object>(); 




    temp.put("imageUri", drawableID); 




    temp.put("key",String); 




    arraylistobject.add(temp); 




    HashMap<String,Object> temp1 = new HashMap<String,Object>(); 




    temp1.put("imageUri", drawableID); 




    temp1.put("key",String); 




    arraylistobject.add(temp1); 

}

您可以用上面定義的ArrayList與HashMap的,然後你可以添加列表INTI本地存儲的各種形狀。

相關問題