1.Adapter基本介绍(一)
1.1 Adapter是连接后端数据和前端显示的适配器接口,是数据和UI之间的一个重要的纽带。常见的View(ListView GridView)等地方都需要用到Adapter,比较常见的适配器有BaseAdapter、SimpleAdapter、SimpleCursorAdapter、ArrayAdapter(支持泛型操作,最为简单)等。
1.2 列表的显示需要三个元素:
1.listview:用来展示的view
2.适配器:用来把数据展示在view中的中介
3.数据:具体被展示的字符串、图片或基本的组件
案例一

ListView布局
"><RelativeLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/activity_main"
android:layout_width="match_parent"
android:layout_height="match_parent">
<ListView
android:id="@+id/list"
android:layout_width="wrap_content"
android:layout_height="wrap_content"/>
</RelativeLayout>
TextView布局
<?xml version="1.0" encoding="utf-8"?>
<TextView xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
</TextView>
arrayAdapter1();
/**
* 将字符串数组添加到listview中
*/
private void arrayAdapter1() {
listView = (ListView) findViewById(R.id.list);
String[] str = {"1", "2", "3", "4", "5", "6", "7"};
strAdapter = new ArrayAdapter<>(this, R.layout.item, str);
listView.setAdapter(strAdapter);
}
案例二

arrayAdapter2();
private void arrayAdapter2() {
listView = (ListView) findViewById(R.id.list);
getData();
listView.setAdapter(new ArrayAdapter<String>(this, R.layout.item, getData()));
}
private ArrayList<String> getData() {
ArrayList<String> list = new ArrayList<>();
list.add("第一行item");
list.add("第二行item");
list.add("第三行item");
list.add("第四行item");
list.add("第五行item");
return list;
}
listView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> adapterView, View view, int i, long l) {
Toast.makeText(MainActivity.this, ((TextView) view).getText(), Toast.LENGTH_SHORT).show();
}
});