注意要写三个不同的布局
Myadapterx
package com.example.week02.adapter;
import android.content.Context;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.ImageView;
import android.widget.TextView;
import com.example.week02.R;
import com.example.week02.bean.JsonBean;
import com.nostra13.universalimageloader.core.ImageLoader;
import java.util.List;
/**
* @Auther: 努力
* @Date: 2019/1/4 14:31:${卢文杰}
* @Description:
*/
public class MyAdapterx extends BaseAdapter {
private Context context;
private List<JsonBean.DataBean> list;
private String s;
public MyAdapterx(Context context, List<JsonBean.DataBean> list, String s) {
this.context = context;
this.list = list;
this.s = s;
}
@Override
public int getCount() {
return list.size();
}
@Override
public Object getItem(int i) {
return null;
}
@Override
public long getItemId(int i) {
return 0;
}
@Override
public int getViewTypeCount() {
return 3;
}
@Override
public int getItemViewType(int position) {
return position % 3;
}
@Override
public View getView(int i, View view, ViewGroup viewGroup) {
if (s.equals("1")) {
ViewHolder holder;
if (view == null){
view = LayoutInflater.from(context).inflate(R.layout.item_grid,null);
holder = new ViewHolder();
holder.image = view.findViewById(R.id.image_name);
holder.text = view.findViewById(R.id.text_name);
view.setTag(holder);
}else{
holder = (ViewHolder) view.getTag();
}
JsonBean.DataBean dataBean = list.get(i);
holder.text.setText(dataBean.getTitle());
String pic_s = dataBean.getThumbnail_pic_s();
ImageLoader.getInstance().displayImage(pic_s,holder.image);
} else if (s.equals("2")) {
switch (getItemViewType(i)) {
case 0:
ViewHolder0 holder0;
if (view == null) {
view = LayoutInflater.from(context).inflate(R.layout.item_01, null);
holder0 = new ViewHolder0();
holder0.m0 = view.findViewById(R.id.image0);
holder0.t0 = view.findViewById(R.id.text0);
view.setTag(holder0);
} else {
holder0 = (ViewHolder0) view.getTag();
}
JsonBean.DataBean dataBean0 = list.get(i);
holder0.t0.setText(dataBean0.getTitle());
String pic_s0 = dataBean0.getThumbnail_pic_s();
ImageLoader.getInstance().displayImage(pic_s0, holder0.m0);
break;
case 1:
ViewHolder1 holder1;
if (view == null) {
view = LayoutInflater.from(context).inflate(R.layout.item_02, null);
holder1 = new ViewHolder1();
holder1.t1 = view.findViewById(R.id.text1);
holder1.m1 = view.findViewById(R.id.image1);
view.setTag(holder1);
} else {
holder1 = (ViewHolder1) view.getTag();
}
JsonBean.DataBean dataBean1 = list.get(i);
holder1.t1.setText(dataBean1.getTitle());
String pic_s1 = dataBean1.getThumbnail_pic_s();
ImageLoader.getInstance().displayImage(pic_s1, holder1.m1);
break;
case 2:
ViewHolder2 holder2;
if (view == null) {
view = LayoutInflater.from(context).inflate(R.layout.item_03, null);
holder2 = new ViewHolder2();
holder2.t2 = view.findViewById(R.id.text2);
holder2.t3 = view.findViewById(R.id.text3);
holder2.m2 = view.findViewById(R.id.image2);
view.setTag(holder2);
} else {
holder2 = (ViewHolder2) view.getTag();
}
JsonBean.DataBean dataBean2 = list.get(i);
holder2.t2.setText(dataBean2.getTitle());
holder2.t3.setText(dataBean2.getAuthor_name());
String pic_s2 = dataBean2.getThumbnail_pic_s();
ImageLoader.getInstance().displayImage(pic_s2, holder2.m2);
break;
}
}
return view;
}
static class ViewHolder {
ImageView image;
TextView text;
}
static class ViewHolder0 {
ImageView m0;
TextView t0;
}
static class ViewHolder1 {
ImageView m1;
TextView t1;
}
static class ViewHolder2 {
ImageView m2;
TextView t2, t3;
}
}
效果图: