多条目的ListView

  //多条目

public class listAdapter extends BaseAdapter {
private Context context;
private List list;

public listAdapter(Context context, List<User> list) {
    this.context = context;
    this.list = list;
}

@Override
public int getCount() {
    return list.size();
}

@Override
public Object getItem(int i) {
    return list.get(i);
}

@Override
public long getItemId(int i) {
    return i;
}

@Override
public View getView(int i, View view3, ViewGroup viewGroup) {
    int itemViewType = getItemViewType(i);
    switch (itemViewType){
        case 0:
            ViewHolder holder=null;
            if (view3==null){
                holder=new ViewHolder();
                view3=View.inflate(context,R.layout.list_view,null);
                holder.text1=view3.findViewById(R.id.text2);
                holder.img1=view3.findViewById(R.id.img2);
                view3.setTag(holder);
            }else{
                holder= (ViewHolder) view3.getTag();
            }
            holder.text1.setText(list.get(i).getText());
            Glide.with(context).load(list.get(i).getThumbnail()).into(holder.img1);
            break;
        case 1:
            ViewHolder2 holder2=null;
            if (view3==null){
                holder2=new ViewHolder2();
                view3=View.inflate(context,R.layout.list_view2,null);
                holder2.text2=view3.findViewById(R.id.text4444);
                view3.setTag(holder2);
            }else{
                holder2= (ViewHolder2) view3.getTag();
            }
            holder2.text2.setText(list.get(i).getText());
            break;
    }


    return view3;
}
class ViewHolder{
    private ImageView img1;
    private TextView text1;
}
//多条目加载

class ViewHolder2{
private TextView text2;
}
@Override
public int getViewTypeCount() {
return 2;
}

@Override
public int getItemViewType(int position) {
    return position%2;
}

猜你喜欢

转载自blog.csdn.net/zhe_guan/article/details/87880118
今日推荐