2011-05-26 48 views
0

我正在創建一個應用程序,它使用一個數據訪問對象類來加載到一個Serializable對象的值。Android和從sqlite數據庫加載列表視圖

如何執行以下操作。

  • 從佈局中查找ListView對象。
  • 加載序列化列表到ListView中

我在讀下面的文檔http://developer.android.com/resources/tutorials/views/hello-listview.html

,但我發現,當我試圖遵循這個代碼錯誤,但使用的序列化清單:

cannot find symbol 
    [javac] symbol : constructor ArrayAdapter(

我有這個在我的文件太

import android.widget.ArrayAdapter; 
頂部

我正試圖將目標設定爲2.1及以上。

這是我的代碼,因爲它代表

http://pastie.org/1976415

+0

請向我們展示您嘗試使用ArrayAdapter的代碼。 – WarrenFaith 2011-05-26 10:49:05

+0

https://gist.github.com/992913 – 2011-05-26 10:54:52

+0

這是我在android上的第一次嘗試,我已經瞭解了ios,但這是不同的。 – 2011-05-26 10:55:37

回答

0

當在ListView中顯示數據庫中的數據時,應該使用ArrayAdapter。改用CursorAdapter(例如SimpleCursorAdapter)。使用遊標和CursorAdapter時,您將獲得更好的性能,因爲只有在需要時才從數據庫讀取項目(例如,用戶滾動列表)。

當您使用ArrayAdapter時,您必須提前加載所有項目,這是不必要的,因爲您可能不需要全部項目。因此使用Cursor和CursorAdapter可以提供更好的性能並減少內存使用量。

檢查this blog post的教程。

0

要傳遞的Ticket個清單給<String>適配器。嘗試改變它:

setListAdapter(new ArrayAdapter<Ticket>(this, R.layout.main.list, tickets)); 
+0

我讓編譯器現在抱怨'票據'。 「int不能被解除引用」 – 2011-05-26 11:08:46

相關問題