ListView用的很频繁,有时候会要求一个ListView中会有不同的布局存在
继承BaseAdapter可以实现这样的功能
除了常写的那几个方法外,还要重写下面几个方法:
getViewTypeCount()
这个返回ListView中需要返回几种布局,这样事先就要统计好布局种类
getItemViewType(int)
根据position返回一个布局的Type,这需要自己定义
最后在getView()中,根据Type创建不同的布局
不同的布局有对应的ViewHolder
if(null == convertView) {
switch(type) {
case xxx:
break;
case xxx:
break;
} else {
switch(type) {
case xxx:
break;
case xxx:
break;
}
然后创建不同的布局后还要根据不同的Type来加载不同的元素进行赋值
没有Demo,自己Google吧。
写一篇这个让自己需要的时候来看下
本文详细介绍了如何使用BaseAdapter在ListView中实现多种布局,包括重写关键方法以统计布局类型、设置布局类型和创建不同布局的过程。通过实例演示了如何根据不同位置返回不同布局类型,并在实际应用中灵活加载元素。
3231

被折叠的 条评论
为什么被折叠?



