Android 基本控制元件的使用五(ListView 與 ArrayAdapter)
專案技術:通過 adapter 來把資料顯示出來,
顯示這樣一個介面:
開發過程:
1.在佈局中建立一個 ListVIew (用來呈現資料的)
2.在佈局中建立一個item(每一項的顯示方式)
3.宣告 ListView
4.建立 ArrayList 並 新增資料
5.建立 adapter (要載入的佈局,資料)
6.為 ListView 新增介面卡
activity_main.xml
<RelativeLayoutxmlns: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"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context
<ListView
android:id="@+id/listView"
android:layout_width="match_parent"
android:layout_height="match_parent"
></ListView>
</RelativeLayout>
item.xml
<?xmlversion="1.0"encoding="utf-8"?>
<TextViewxmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:text="我們是朋友"
android:padding="10dp"
android:layout_height="match_parent">
</TextView>
MainActivity.java
package cn.sohpia.listview;
import java.util.ArrayList;
import java.util.List;
import android.app.Activity;
import android.os.Bundle;
import android.widget.ArrayAdapter;
import android.widget.ListView;
public class MainActivity extends Activity {
// 宣告控制元件
private ListView listView;
// 資料來源
private List<String>data;
// 介面卡
private ArrayAdapter<String>adapter;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
// 建立ArrayList 用於儲存資料
data = new ArrayList<String>();
data.add("aaaaaaaaaaaaa");
data.add("bbbbbbbbbbbbbb");
data.add("ccccccccccccc");
data.add("ddddddddddddd");
data.add("eeeeeeeeeeeee");
data.add("fffffffffffff");
data.add("ggggggggggggg");
// 初始化控制元件
listView = (ListView) findViewById(R.id.listView);
// 建立一個adapter(item,data(資料))
adapter = new ArrayAdapter<String>(this, R.layout.item,data);
// 為控制元件設定介面卡
listView.setAdapter(adapter);
}
}