2013-04-11 52 views
1

我是Android編程的新手。我可以使用簡單的ListView來使用字符串ArrayList。我想在複雜向上走一步,並有我的ListView這樣可以由簡單的Java對象:列表視圖用項目的簡單Java對象的示例

class myItem { 
    public String name; 
    public Integer price; 
    public Integer weight; 
} 

ListView控件只需要在上面的物體顯示的名稱。它不必爲每個項目設置多個圖標或多個可點擊的操作。

但我不知道從哪裏開始。我在WWW上看到的所有例子都要複雜得多,需要我學習與此無關的事情(如數據庫)。或者,每個ListView項目都顯示多個視圖,如文本和圖像以及圖標等,每個視圖都可點擊以執行不同的操作。我不需要這些,並且爲了讓這些示例正常工作,我正在閱讀不需要的功能。

有沒有人有一個簡單的ListView包含簡單的Java對象(如上面的那個)的例子?

+0

你使用數據庫嗎? – 2013-04-11 00:01:47

+0

我不使用數據庫。 – 2013-04-11 00:08:08

+0

你有很多名字嗎?你在哪裏存放它們?如果你有很多它們,那麼考慮數據庫,你可以使用簡單的遊標適配器。 – 2013-04-11 00:13:05

回答

2

但我不知道從哪裏開始。

myItem上實施public String toString()方法。然後創建一個ArrayList<myItem>並用它代替ArrayList<String>,用適當的myItem實例填充該列表,並將該列表放入ArrayAdapter<myItem>而不是ArrayAdapter<String>。無需進行其他更改 - 無論您使用ArrayAdapter<String>的佈局如何,都可以使用ArrayAdapter<myItem>

如果您是Java新手,toString()是用於返回對象的String表示的標準Java方法。 ArrayAdapter的默認行爲是在給定列表位置的對象上調用toString()並使用它來填充行。

+0

好的。聽起來太簡單了。我正在嘗試這個。 – 2013-04-11 00:19:14

+0

工作!謝謝! – 2013-04-11 00:23:11