1、关于Adapter,由API知,ArrayAdapter和SimpleAdapter都是其实现类
2、示例:使用ArrayAdapter创建ListView
1.布局文件:
<ListView
android:id="@+id/list1"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:divider="#f00"
android:dividerHeight="2dp"
android:headerDividersEnabled="false"/>
2.程序代码:
注意,创建ArrayAdapter需要的三个参数:
Context : 上下文对象
textViewResourceId : 资源ID,代表作为ArrayAdapter列表项的组件
数组或List:为多个列表项提供数据
3、示例:使用SimpleAdapter创建ListView
1.布局文件
1. simple_item.xml:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="wrap_content"
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="com.example.simpleadapter_demo_13.MainActivity"
android:orientation="horizontal">
<ImageView
android:id="@+id/header"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:paddingLeft="10dp" />
<LinearLayout
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="wrap_content">
<!-- 定义一个TextView,用于作为列表项的一部分 -->
<TextView
android:id="@+id/name"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="14dp"
android:paddingRight="10dp"
android:text="hh"/>
<TextView
android:id="@+id/desc"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="14dp"
android:paddingRight="10dp"
android:text="ddd"/>
</LinearLayout>
</LinearLayout>
2. 代码实现:
4、ArrayAdapter数据适配器的实现过程:
1. 新建适配器
arr_adapter=new ArrayAdapter<String>(上下文(this) , 当前ListView加载的每一个列表项所对应的
布局文件(android.R.layout.simple_list_item_1) , 数据源(String[]arr_data={"1","2","3","4"}),数据源对应项 );
2. 添加数据源到适配器(上一步已包含)
3. 视图(ListView)加载适配器
listView.setAdapter(arr_adapter);