ListView多条目展示的简单实现

来源:互联网 发布:mac cocos2dx lua 编辑:程序博客网 时间:2024/05/21 17:25

第一步:
创建多个item布局:

我们要处理列表载多个item就要创建多个item布局, 不同的item布局就代表一个类型,因此可以根据具体情况而创建具体的item布局。
这里写图片描述

第二步:
实现类MoreItemAdapter继承BaseAdapter:

我们在类MoreItemAdapter里面初始化了多个item标识常量,并在MoreItemAdapter的带参构造方法中传递item类型数据。
这里写图片描述

第三步:
重写getViewTypeCount()和 getItemViewType(int position)方法:

getViewTypeCount()为返回类型的个数 ,getItemViewType处理类型并返回一个int类型的标识。(注:必须重写,否则处理item类型时会出现空指针异常)
这里写图片描述

第四步:
重写getView()方法:

在这里方法通过getItemViewType(position)方法处理加载item布局并初始化不同item里的控件,并运用ViewHolder机制来进行复用item项。
这里写图片描述
第五步:
显示数据:

处理完item布局之后同样根据getItemViewType(position)方法来显示不同item类型的数据。这里可以if语句判断也可以用switch分支语句。
这里写图片描述
第六步
设置数据:

在MainActivity中实例化列表控件、实例化MoreItemAdapter适配器并设置item类型数据,设置适配器adapter。这里就完成了处理列表加载多个不同item的问题。
这里写图片描述