1. 程式人生 > >一步步學ListView(1):建立一個最簡單的ListView

一步步學ListView(1):建立一個最簡單的ListView

什麼是ListView?

ListView是在android開發中使用得相當頻繁的一個控制元件,它的作用是用來展示一組可滾動的列表條目。列表中的條目一般使用Adapter自動插入到列表中。Adapter會從資料來源中獲取資料(如陣列、資料庫等),然後將每個資料條目轉換成條目檢視放到列表當中。

關於Adapter的詳細機制,我們會在另外的文章裡面進行深入的瞭解。

實現ListView

實現ListView一般需要以下步驟:
1. 準備ListView要顯示的資料
2. 確定要用什麼來儲存資料(Array、Cursor等等)
3. 構建Adapter
4. 將Adapter新增到ListView,並顯示出來

程式例項

以下程式碼演示瞭如何實現一個最簡單的ListView——我們用字串陣列來儲存資料,ListView上的每一個條目都只顯示一行文字,同時還借用了Android內建的預設樣式android.R.layout.simple_list_item_1來進行顯示。

activity_main.xml(佈局檔案,裡面只有一個ListView)

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent" android:layout_height="match_parent" tools:context="${packageName}.${activityClass}" >
<ListView android:id="@+id/lvDemo" android:layout_width="match_parent" android:layout_height="wrap_content" > </ListView>
</RelativeLayout>

MainActivity.java片斷(在onCreate()中完成ListView的宣告和資料繫結)

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    // ArrayAdapter的引數1是一個context,代表要生成ListView的上下文
    // 引數2要傳入的是一個佈局檔案id值,這裡使用google預置的佈局檔案
    ArrayAdapter<String> adapter = new ArrayAdapter<String>(MainActivity.this, android.R.layout.simple_list_item_1);

    ListView lvDemo = (ListView)findViewById(R.id.lvDemo);
    lvDemo.setAdapter(adapter);

    // 新增資料
    for(int i = 0; i < 20; i++){
        adapter.add("item " + String.valueOf(i));
    }
}

現在我們有了一個最簡單的ListView了(雖然很簡陋)
這裡寫圖片描述

同系列文章
一步步學ListView(2):自定義ListView (未完成
一步步學ListView(3):ListView效能優化 (未完成