Android中SimpleAdapter,BaseAdapte详解
来源:互联网 发布:python snmp开发教程 编辑:程序博客网 时间:2024/06/08 08:57
1.Adapter类简介
Adapter相关类结构如下图所示:
自定义Adapter子类,就需要实现上面几个方法,其中最重要的是getView()方法,它是将获取数据后的View组件返回,如ListView中每一行里的TextView、Gallery中的每个ImageView。
2.Adapter常用子类有
3.simpleAdapter
simpleAdapter的扩展性最好,可以定义各种各样的布局出来,可以放上ImageView(图片)等。可以显示比较复杂的列表,包括每行显示图片、文字等,但不能对列表进行后期加工(在java代码中加工),也是只是单纯的负责显示
public class ImageListView extends ListActivity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
SimpleAdapter adapter = new SimpleAdapter(this,getData(),R.layout.imagelayout, new String[]{"title","info","img"}, new int[]{R.id.title,R.id.info,R.id.img}); setListAdapter(adapter); } private List<Map<String, Object>> getData() { List<Map<String, Object>> mList = new ArrayList<Map<String, Object>>(); Map<String, Object> map = new HashMap<String, Object>(); map.put("title", "tp"); map.put("info", "fb"); map.put("img", R.drawable.icon); mList.add(map); map = new HashMap<String, Object>(); map.put("title", "tp2"); map.put("info", "fb2"); map.put("img", R.drawable.icon2); list.add(map); return list; }
}
使用simpleAdapter的数据用一般都是HashMap构成的List,list的每一节对应ListView的每一行。HashMap的每个键值数据映射到布局文件中对应id的组件上。因为系统没有对应的布局文件可用,我们可以自己定义一个布局imagelayout.xml
4.BaseAdapter
BaseAdapter是实现了ListAdapter和SpinnerAdapter两个接口,当然它也可以直接给ListView和Spinner等UI组件直接提供数据,实现复杂的列表布局,由于BaseAdapter是一个抽象类,使用该类需要自己写一个适配器继承该类,正是由于继承了该类,需要我们重写一些方法,让我们可以在代码里控制列表的样式,更加灵活。
- Android中SimpleAdapter,BaseAdapte详解
- Android中SimpleAdapter,BaseAdapte详解
- Android中SimpleAdapter详解
- Android中SimpleAdapter,ArrayAdapter和BaseAdapter详解
- Android中SimpleAdapter,ArrayAdapter和BaseAdapter详解
- Android SimpleAdapter源码详解
- Android SimpleAdapter源码详解
- android-SimpleAdapter详解
- android的ListView中SimpleAdapter
- Android SimpleAdapter 的详解和使用
- simpleAdapter详解
- simpleAdapter详解
- SimpleAdapter 详解
- Android 中 ListAactivity 和Activity 使用ListView 以及ArrayAdapter和SimpleAdapter参数详解
- Android中SimpleAdapter,ArrayAdapter和BaseAdapter小记
- Android中ListView之SimpleAdapter的使用
- Android中ArrayAdapter、SimpleAdapter、BaseAdapter总结
- android中SimpleAdapter的编程实例
- Mac系统如何隐藏Dock上的图标
- VS 2015配置OpenCV3.2编译环境
- Ubuntu系统下切换Openjdk7和Openjdk8
- 【算法题】求二叉树所有节点的左右子树的绝对值差的和
- 1224: 矩阵翻转
- Android中SimpleAdapter,BaseAdapte详解
- 输入一行字符,分别统计出其中英文字母、空格、数字和其它字符的个数
- 求一个数组中第k大的数方法
- 沈阳集训day5
- bzoj 3294: [Cqoi2011]放棋子 (容斥原理+组合数+DP)
- 【深度学习】反卷积(transposed convolution)介绍
- 矩形游戏
- Python: Windows 7 64位 安装、使用 pymongo 3.2
- atsha204a加密ic02