ListView是Android中用以显示数据的列表控件.对于ListView的数据显示,离不开适配器 Adapter.它起到的作用就是桥接数据源和显示控件,这个工作在ListView.setAdapter()函数中完成.对于ListView来说,数据是按条显示的,每个条称为一个Item , 我们可以定制Item 的样式,然后也是在适配器中完成与ListView的连接。
对于Adapter而言,系统有几种常用的Adapter,我们先来说一下最基本的应用。使用系统的ArrayAdapter。
- 定义一个数组(等下用来显示的数据源)
- 构造一个适配器(Adapter的构造函数含有多个重载)
- 绑定适配器
具体代码可以这么写:
- String[] str = new Sring[] {"1","2","3","4","5"}; //定义数组
- ListView lv = (ListView) findViewById(R.id.listview); //这是你要显示数据的ListView
ArrayAdapter adapter =new ArrayAdapter<String> (this, android.R.layout.simple_list_item_1,str);
/* ArrayAdapter的构造函数很多,这个是最基本的,其中第一个参数为上下文,第二个为Item的布局,此处我写的是Android自带的基本样式,但是要注意自定义样式的话里面应该包含TextView用以显示我们后面定义的字符串数据。第三个参数就是要显示的数据源,按照需求可以自己自定义数据结构。 */
- lv.setAdapter(adapter); //完成适配器绑定
自定义适配器
- 定义一个新的Adapter类,例如MusicAdapter
packagecom.example.zeashon.a20160728;
importandroid.content.Context;
importandroid.media.MediaRouter;
importandroid.text.Layout;
importandroid.util.Log;
importandroid.view.LayoutInflater;
importandroid.view.View;
importandroid.view.ViewGroup;
importandroid.widget.Adapter;
importandroid.widget.BaseAdapter;
importandroid.widget.TextView;
importjava.util.List;
/**
*CreatedbyZeashonon2016/7/30.
*/
publicclassMusicAdapterextendsBaseAdapter{
privateContextcontext;
private