2015年6月27日 星期六

[Android] ListView - 基本用法

ListView是一種相當常用的Layout,可以用來顯示許多的資訊,

這裡會介紹ListView的基本用法。

首先你可以在你的Activity裡面加入一個ListView的元件。


程式碼如下:


中間可能沒有什麼太大的問題,只是在New Adapter的時候,丟了三個參數進去可能有些疑惑。

第一個是丟Context,第三個是丟字串陣列,看起來都還好,

但第二個丟了一個 android.R.layout.simple_list_item_1 是什麼意思呢?

事實上這是Android內建的Layout,專門用於ListView的item的,它有提供許多種樣式,

我們實際輸入看看會有哪些樣式可以選擇。

simple_list_item_1
基礎中的基礎,只有一行文字顯示。














接下來的幾個,因為可以讓使用者選擇要不要勾選,要多設定一個屬性。

詳細的程式碼如下。


setChoiceMode

可以設定許多種類型,可以自己試試看要哪種。



而只要把Layout丟入的值改變,會有以下幾種不同的選單。

simple_list_item_checked
CheckBox的樣式,可以打勾之類的。















simple_list_item_multiple_choice
多選選單。














simple_list_item_single_choice
單選選單。















simple_list_item_2
有兩行文字,一大一小,這時候你必須修改程式碼才能使用,因為ArrayAdapter沒辦法傳入多個值,因此要改使用SimpleAdapter來填充ListView裡面的屬性。

而他要丟的參數比較多一點,詳細程式碼可以參考下面。


要丟五個參數,Context、List、Layout、Key1&Key2、Text1&Text2

前幾個應該還算好理解,List就丟入一個包有HashMap的List就可以,

Key1 、 Key2 則是那個HashMap的Key值

Text1、Text2是這個Layout裡面的文字ID



























最後會有的效果會是這個樣子。



















以上是介紹ListView最基本的用法,只是純粹顯示資料而已,

那當使用者點選或者是想知道他勾了那些選單,以及客製化ListView會在之後的章節介紹。