Adapter控件与其他的View控件相比,不同之处在于它们的内容通常是一个包含多项相同格式资源的列表,每次只显示其中的一项。
既然它的内容是一个列表,就不能只通过调用setText()、setBackgroundResource()等方法来设置整个列表的内容,而是需要先把这些多项要加载的内容放到一个列表,然后加载到Adapter控件中,这个控件就称为适配器。
Android中有四种Adapter对象供开发者使用
- ArrayAdapter
- SimpleAdapter
- SimpleCursorAdapter
- 自定义Adapter
适配器一般用来给ListView、Spinner、Gallery、GridView控件填充数据。
- ArrayAdapter
使用于列表中只包含文本信息的情况,填充文本信息最便捷的一种。
public class ListViewActivity extends Activity { private ListView lv; private ArrayAdapter adapter;//适配器 private String[]data = new String[] {"数据1","数据2","数据3","数据4","数据5","数据6"}; protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_list_view); lv=(ListView) findViewById(R.id.ListView_id); //创建适配器对象 adapter = new ArrayAdapter( this, android.R.layout.simple_list_item_1,//此乃适配器自带的一种布局 data); lv.setAdapter(adapter); lv.setOnItemClickListener( new OnItemClickListener() { public void onItemClick(AdapterView<?> arg0, View arg1, int position, long id) { System.