recyclerView多布局,多种不同类型数据合并处理

本文介绍了一种在移动端应用中实现多布局列表视图的方法。通过定义不同的item类型,并在适配器中根据不同类型加载对应的布局文件,实现了不同类型数据的灵活展示。此外,还介绍了如何通过设置统一的数据基类来支持多种数据类型的混合使用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

对于常见的多布局,我们可以设置不同的type,例如 getItemViewType方法:


if (mDatas.get(position).getType() ==1) {

     return   1;

} else if (mDatas.get(position).getType() ==2) {    

     return    2;

}

onCreateViewHolder方法

if (viewType == 1) {

/*显示服务的item项*/ view = LayoutInflater.from(mContext).inflate(R.layout.a,  parent ,   false);

return new AHolder(view);

} else if (viewType == 2) {

/*显示服务title项*/ view =     LayoutInflater.from(mContext).inflate(R.layout.b, parent, false);

return new BHolder(view);

onBindViewHolder方法同理

if (getItemViewType(position) == 1) {

((AHolder) holder).aTextview.setText("a");

}else{

}(( BHolder ) holder).aTextview.setText(“b”);

对于如果不同的viewType加载的list类型都不同,例如A类型需要的是Adata,类型B需要的是Bdata,一个list无法传递过来,我们需要把Adata和Bdata都继承Cdata,然后在Cdata中设置一个Type,添加不同数据类型时候设置不同type,传入判断当前type是A类型的数据还是B类型数据,强转不同数据类型加载数据

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值