专高二 day8 新闻&评论模块——BRVAH万能适配器(提薪)

BRVAH万能适配器

 

万能适配器

package com.bw.day8_brvah.adapter;

import android.content.Context;
import android.widget.ImageView;

import androidx.annotation.Nullable;

import com.bumptech.glide.Glide;
import com.bw.day8_brvah.R;
import com.bw.day8_brvah.entity.FoodEntity;
import com.chad.library.adapter.base.BaseQuickAdapter;
import com.chad.library.adapter.base.viewholder.BaseViewHolder;

import java.util.List;

public class MyBAVCHAdapter extends BaseQuickAdapter<FoodEntity.DataDTO, BaseViewHolder> {
    Context context;
    List<FoodEntity.DataDTO> dataDTOList;

    public MyBAVCHAdapter(int layoutResId, List<FoodEntity.DataDTO> data, Context context) {
        super(layoutResId, data);
        this.context = context;
        this.dataDTOList=data;
    }



    @Override
    protected void convert(BaseViewHolder baseViewHolder, FoodEntity.DataDTO dataDTO) {
        baseViewHolder.setText(R.id.tv,dataDTO.getTitle());
        ImageView imageView=baseViewHolder.findView(R.id.iv);
        Glide.with(context).load(dataDTO.getPic())
                .override(200,200)
                .into(imageView);
    }
}

activity 

package com.bw.day8_brvah;

import androidx.appcompat.app.AppCompatActivity;
import androidx.recyclerview.widget.LinearLayoutManager;
import androidx.recyclerview.widget.RecyclerView;

import android.os.Bundle;
import android.widget.Toast;

import com.bw.day8_brvah.adapter.MyBAVCHAdapter;
import com.bw.day8_brvah.entity.FoodEntity;
import com.google.gson.Gson;
import com.lzy.okgo.OkGo;
import com.lzy.okgo.callback.StringCallback;
import com.lzy.okgo.model.Response;

import java.util.ArrayList;
import java.util.List;

public class MainActivity extends AppCompatActivity {

    private RecyclerView rv;
    List<FoodEntity.DataDTO> dataDTOList=new ArrayList<>();
    MyBAVCHAdapter myBAVCHAdapter;



    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        rv = (RecyclerView) findViewById(R.id.rv);
        initdata();
        myBAVCHAdapter = new MyBAVCHAdapter(R.layout.item,dataDTOList,this);
        rv.setAdapter(myBAVCHAdapter);
        rv.setLayoutManager(new LinearLayoutManager(this));
    }

    private void initdata() {
        OkGo.<String>get("http://43.143.146.165:7777/foods/getFoods?currentPage=1&pageSize=10").execute(new StringCallback() {
            @Override
            public void onSuccess(Response<String> response) {
                String body = response.body();
                List<FoodEntity.DataDTO> data = new Gson().fromJson(body, FoodEntity.class).getData();

                if(data==null&&data.size()==0){
                    Toast.makeText(MainActivity.this, "没有更多资源了", Toast.LENGTH_SHORT).show();
                }else {
                    dataDTOList.addAll(data);
                    myBAVCHAdapter.notifyDataSetChanged();

                }
            }
        });
    }
}

 

多布局 

package com.bw.day8_brvah.entity;

import com.chad.library.adapter.base.entity.MultiItemEntity;

import java.util.List;

public class FoodEntity {
    private int errorCode;
    private String errorMsg;
    private List<DataDTO> data;

    public int getErrorCode() {
        return errorCode;
    }

    public void setErrorCode(int errorCode) {
        this.errorCode = errorCode;
    }

    public String getErrorMsg() {
        return errorMsg;
    }

    public void setErrorMsg(String errorMsg) {
        this.errorMsg = errorMsg;
    }

    public List<DataDTO> getData() {
        return data;
    }

    public void setData(List<DataDTO> data) {
        this.data = data;
    }

    public static class DataDTO implements MultiItemEntity {
        private int id;
        private int collect_num;
        private String food_str;
        private int num;
        private String pic;
        private String title;
        private int type;

        public int getType() {
            return type;
        }

        public void setType(int type) {
            this.type = type;
        }

        public int getId() {
            return id;
        }

        public void setId(int id) {
            this.id = id;
        }

        public int getCollect_num() {
            return collect_num;
        }

        public void setCollect_num(int collect_num) {
            this.collect_num = collect_num;
        }

        public String getFood_str() {
            return food_str;
        }

        public void setFood_str(String food_str) {
            this.food_str = food_str;
        }

        public int getNum() {
            return num;
        }

        public void setNum(int num) {
            this.num = num;
        }

        public String getPic() {
            return pic;
        }

        public void setPic(String pic) {
            this.pic = pic;
        }

        public String getTitle() {
            return title;
        }

        public void setTitle(String title) {
            this.title = title;
        }

        @Override
        public int getItemType() {
            return type;
        }
    }
}
package com.bw.day8_brvah.adapter;

import android.content.Context;

import com.bw.day8_brvah.entity.FoodEntity;
import com.chad.library.adapter.base.BaseMultiItemQuickAdapter;
import com.chad.library.adapter.base.viewholder.BaseViewHolder;

import java.util.List;

public class MyBAVCHMutiAdapter extends BaseMultiItemQuickAdapter<FoodEntity.DataDTO, BaseViewHolder> {
    Context context;
    List<FoodEntity.DataDTO> list;

    public MyBAVCHMutiAdapter(List<FoodEntity.DataDTO> data, Context context) {
        super(data);
        this.context = context;
        this.list = data;
    }

    @Override
    protected void convert(BaseViewHolder baseViewHolder, FoodEntity.DataDTO dataDTO) {

    }
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值