这个是之前main的,适配器

-------------这个是适配器,展示数据
public class MainAdapter extends BaseAdapter {
    private Context context;
    private List<MainBean.ResultBean.DataBean> dataBeanList;

    public MainAdapter(Context context, List<MainBean.ResultBean.DataBean> dataBeanList) {
        this.context = context;
        this.dataBeanList = dataBeanList;
    }

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

    @Override
    public MainBean.ResultBean.DataBean getItem(int i) {
        return dataBeanList.get(i);
    }

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

    @Override
    public int getItemViewType(int position) {
        if (!TextUtils.isEmpty(dataBeanList.get(position).getThumbnail_pic_s03())){
            return VIEM_TYPE_TWO;
        }else{
            return VIEM_TYPE_ONE;
        }

    }

    @Override
    public int getViewTypeCount() {
        return super.getViewTypeCount()+3;
    }
    private final int VIEM_TYPE_ONE = 1;
    private final int VIEM_TYPE_TWO = 2;
    @Override
    public View getView(int i, View view, ViewGroup viewGroup) {
        int viewType = getItemViewType(i);
        switch (viewType){
            case VIEM_TYPE_ONE:
                ViewHodler hodler = null;
                if (view == null){
                    hodler = new ViewHodler();
                    view = LayoutInflater.from(context).inflate(R.layout.main_list_item_one,null,false);
                    hodler.tvTitle = view.findViewById(R.id.tv_title);
                    hodler.ivImage = view.findViewById(R.id.iv_image);
                    view.setTag(hodler);
                }else{
                    hodler = (ViewHodler) view.getTag();
                }
                hodler.tvTitle.setText(dataBeanList.get(i).getTitle());
                ImageLoader.getInstance().displayImage(dataBeanList.get(i).getThumbnail_pic_s(),hodler.ivImage);
                break;
            case VIEM_TYPE_TWO:
                ViewHodlerTwo hodlerTwo = null;
                if (view == null){
                    hodlerTwo = new ViewHodlerTwo();
                    view = LayoutInflater.from(context).inflate(R.layout.main_list_item_two,null,false);
                    hodlerTwo.tvTitle = view.findViewById(R.id.tv_title);
                    hodlerTwo.ivImage = view.findViewById(R.id.iv_image);
                    hodlerTwo.ivImage2 = view.findViewById(R.id.iv_image2);
                    hodlerTwo.ivImage3 = view.findViewById(R.id.iv_image3);
                    view.setTag(hodlerTwo);
                }else{
                    hodlerTwo = (ViewHodlerTwo) view.getTag();
                }
                hodlerTwo.tvTitle.setText(dataBeanList.get(i).getTitle());
                ImageLoader.getInstance().displayImage(dataBeanList.get(i).getThumbnail_pic_s(),hodlerTwo.ivImage);
                ImageLoader.getInstance().displayImage(dataBeanList.get(i).getThumbnail_pic_s02(),hodlerTwo.ivImage2);
                ImageLoader.getInstance().displayImage(dataBeanList.get(i).getThumbnail_pic_s03(),hodlerTwo.ivImage3);
                break;
        }
        return view;
    }
    class ViewHodler{
        TextView tvTitle;
        ImageView ivImage;
    }
    class ViewHodlerTwo{
        TextView tvTitle;
        ImageView ivImage;
        ImageView ivImage2;
        ImageView ivImage3;
    }
}

--------------------之后是两个,Item的布局

item1的布局

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent">

    <TextView
        android:id="@+id/tv_title"
        android:layout_width="match_parent"
        android:layout_height="wrap_content" />

    <ImageView
        android:id="@+id/iv_image"
        android:layout_width="match_parent"
        android:layout_height="200dp"
        android:layout_below="@+id/tv_title" />
</RelativeLayout>

item2的布局

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent">

    <TextView
        android:id="@+id/tv_title"
        android:layout_width="match_parent"
        android:layout_height="wrap_content" />

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_below="@+id/tv_title"
        android:orientation="horizontal">

        <ImageView
            android:id="@+id/iv_image"
            android:layout_width="0dp"
            android:layout_height="200dp"
            android:layout_weight="1" />

        <ImageView
            android:id="@+id/iv_image2"
            android:layout_width="0dp"
            android:layout_height="200dp"
            android:layout_weight="1" />

        <ImageView
            android:id="@+id/iv_image3"
            android:layout_width="0dp"
            android:layout_height="200dp"
            android:layout_weight="1" />
    </LinearLayout>
</RelativeLayout>

猜你喜欢

转载自blog.csdn.net/Mir_you/article/details/81974298