一、ArrayAdapter(数组适配器),这个适配器使用有一定的局限性,只能显示一行文本数据
(1)基本使用实例
布局文件:
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
android:layout_width="match_parent"
android:layout_height="wrap_content">
Java文件
package com.example.test3;
import android.app.Activity;
import android.os.Bundle;
import android.widget.ArrayAdapter;
import android.widget.ListView;
public class MainActivity extends Activity{
// 定义要显示的数据
private String[] datas = {"张三","李四","王五","麻子","小强"};
private ArrayAdapter
private ListView listView;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
listView = (ListView) findViewById(R.id.ll1);
// 初始化适配器
adapter = new ArrayAdapter<>(this,android.R.layout.simple_expandable_list_item_1,datas);
listView.setAdapter(adapter);
}
}
效果图:
实现上面还可以先在res\value下创建一个数组资源的xml文件:arrays.xml,然后在listview中使用entries
ArrayAdapter也支持泛型,那么集合肯定必须的,还可以如下所写
4、ArrayAdapter的参数说明:
第一个参数:context上下文对象
第二个参数:每一个item的样式,可以使用系统提供,也可以自定义就是一个TextView
第三个参数:数据源,要显示的数据
系统提供的item的样式,可以试一试
simple_list_item1:单独的一行文本框
simple_list_item2:有两个文本框组成
simple_list_item_checked每项都是由一个已选中的列表项
simple_list_item_multiple_choice:都带有一个复选框
simple_list_item_single_choice:都带有一个单选框