1)什麼是ListView
ListView Android常用控件,在一個scroll list 裏面展示 items 的控件。 這些 items 來自於 ListAdapter , 之後被綁定到ListView上面。
2)ListView的三要素
列表顯示需要三個元素:
(1)ListView 用來展示數據
(2)Adapter(適配器)用來把數據映射到ListView上的中介
(3)數據
3)Adapter的分類
Adapter,有三種類型可供選擇,ArrayAdapter、CursorAdapter、SimpleCursorAdapter
下面用例子說明一下,ArrayAdapter 綁定數據的實現方法。
package com.faterman.listviewdemo;
import java.util.ArrayList;
import java.util.List;
import android.os.Bundle;
import android.app.Activity;
import android.view.Menu;
import android.widget.ArrayAdapter;
import android.widget.ListView;
public class MainActivity extends Activity {
private ListView fmListView;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
fmListView = new ListView(this);
//simple_expandable_list_item_1這是個那知的佈局類型,單行顯示文字
fmListView.setAdapter(new ArrayAdapter<String>(this, android.R.layout.simple_expandable_list_item_1, getData()));
setContentView(fmListView);
}
//返回數據源方法
private List<String> getData(){
List<String> data = new ArrayList<String>();
data.add("test data 1");
data.add("test data 2");
data.add("test data 3");
data.add("test data 4");
return data;
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.main, menu);
return true;
}
}