// 在适配器里写 多条目列表
private int Image_LEFT = 0;
private int Image_RIGHT = 1;
//重写两个方法
@Override
public int getViewTypeCount() {
return 2;
}
@Override
public int getItemViewType(int position) {
if(position%2 == 0){
return Image_LEFT;
}
return Image_RIGHT;
}
@Override
public View getView(int i, View view, ViewGroup viewGroup) {
//先判断getItemViewType是用哪个视图
if(getItemViewType(i) ==Image_LEFT){
LeftHolder holder;
if(view == null){
holder = new LeftHolder();
view = View.inflate(context, R.layout.list_item_left,null);
holder.iv = view.findViewById(R.id.iv);
holder.tv = view.findViewById(R.id.tv);
view.setTag(holder);
}else{
holder = (LeftHolder) view.getTag();
}
holder.tv.setText(list.get(i).getTitle());
ImageLoader.getInstance().displayImage(list.get(i).getImg(),holder.iv, ImageLoaderUtil.getDefaultOption());
}else if(getItemViewType(i) == Image_RIGHT){
RightHolder holder;
if(view == null){
holder = new RightHolder();
view = View.inflate(context, R.layout.list_item_right,null);
holder.iv = view.findViewById(R.id.iv);
holder.tv = view.findViewById(R.id.tv);
view.setTag(holder);
}else{
holder = (RightHolder) view.getTag();
}
holder.tv.setText(list.get(i).getTitle());
//ImageLoader找图片 写一个ImageLoaderUtil的类,即ImageLoader的控制类 ImageLoader.getInstance().displayImage(list.get(i).getImg(),holder.iv, ImageLoaderUtil.getDefaultOption());
}
return view;
}
//有几种排列方式就写几个ViewHolder(就比如下面的两个方法,也有几个XML)
public class LeftHolder{
ImageView iv;
TextView tv;
}
public class RightHolder{
ImageView iv;
TextView tv;
}
多条目列表展示
最新推荐文章于 2021-10-20 22:22:36 发布