轮播图;list显示;Adapter

public class Frag01 extends Fragment implements ShowView {
private XBanner banner;
private XRecyclerView recyclerView;
private ShowPresenter presenter;
private String PicUrl = “http://172.17.8.100/small/commodity/v1/bannerShow”;
private String ShowUrl = “http://172.17.8.100/small/commodity/v1/commodityList”;
private RecyclerAdapter adapter;
@Nullable
@Override
public View onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
View view = inflater.inflate(R.layout.frag01_item,container, false);
banner = (XBanner) view.findViewById(R.id.banner);
recyclerView = (XRecyclerView) view.findViewById(R.id.recycler);
presenter = new ShowPresenter(new ShowModule(), this);
return view;
}

@Override
public void onActivityCreated(@Nullable Bundle savedInstanceState) {
    super.onActivityCreated(savedInstanceState);
    //设置图片
    banner.loadImage(new XBanner.XBannerAdapter() {
        @Override
        public void loadBanner(XBanner banner, Object model, View view, int position) {
            MyResult result = (MyResult) model;
            Glide.with(getActivity()).load(result.getImageUrl()).into((ImageView) view);
        }
    });
    //创建布局管理器
    LinearLayoutManager manager = new LinearLayoutManager(getActivity());
    manager.setOrientation(LinearLayoutManager.VERTICAL);
    //设置布局管理器
    recyclerView.setLayoutManager(manager);
    //创建适配器
    adapter = new RecyclerAdapter(getActivity());
    //设置适配器
    recyclerView.setAdapter(adapter);
    //获取图片
    presenter.Showget(0, PicUrl);
    presenter.Showget(1, ShowUrl);
}

@Override
public void success(int type, String data) {
    if (type == 0) {
        Gson gson = new Gson();
        PicBean picBean = gson.fromJson(data, PicBean.class);
        List<MyResult> result = picBean.getResult();
        banner.setBannerData(result);
    } else if (type == 1) {
        Gson gson = new Gson();
        JavaBean javaBean = gson.fromJson(data, JavaBean.class);
        ResultBean result = javaBean.getResult();
        Rxxp rxxp = result.getRxxp();
        Mlss mlss = result.getMlss();
        Pzsh pzsh = result.getPzsh();
        List<AllBean> list = new ArrayList<>();
        list.add(rxxp);
        list.add(mlss);
        list.add(pzsh);
        adapter.setData(list);
    }
}

@Override
public void fail(String error) {
    Toast.makeText(getActivity(), error, Toast.LENGTH_LONG);
}

@Override
public void onDestroy() {
    super.onDestroy();
    presenter.destory();
}

}
RecycleAdapter
public class RecyclerAdapter extends RecyclerView.Adapter {

private Context context;
private List<AllBean> list = new ArrayList<>();

public RecyclerAdapter(Context context) {
    this.context = context;
}

@NonNull
@Override
public RecyclerView.ViewHolder onCreateViewHolder(@NonNull ViewGroup viewGroup, int i) {
    int type = getItemViewType(i);
    RecyclerView.ViewHolder holder = null;
    switch (type) {
        case 0:
            //热销新品
            View view = View.inflate(context, R.layout.adapter_rxxp, null);
            holder = new RxxpViewHolder(view);
            break;
        case 1:
            //魔丽时尚
            View view1 = View.inflate(context, R.layout.adapter_mlss, null);
            holder = new MlssViewHolder(view1);
            break;
        case 2:
            //品质生活
            View view2 = View.inflate(context, R.layout.adapter_pzsh, null);
            holder = new PzshViewHolder(view2);
            break;
    }
    return holder;
}

@Override
public void onBindViewHolder(@NonNull RecyclerView.ViewHolder viewHolder, int i) {
    if (viewHolder instanceof RxxpViewHolder && list.get(i) instanceof Rxxp) {
        Log.i("RecyclerAdapter", list.get(i).toString());
        RxxpViewHolder holder = (RxxpViewHolder) viewHolder;
        Rxxp rxxp = (Rxxp) list.get(i);
        holder.title.setText(rxxp.getName());
        //创建适配器
        RxxpAdapter adapter = new RxxpAdapter(context);
        //创建布局管理器
        LinearLayoutManager manager = new LinearLayoutManager(context);
        manager.setOrientation(LinearLayoutManager.HORIZONTAL);
        holder.recyclerView.setLayoutManager(manager);
        holder.recyclerView.setAdapter(adapter);
        List<Bean> list = rxxp.getCommodityList();
        adapter.setData(list);
    } else if (viewHolder instanceof MlssViewHolder && list.get(i) instanceof Mlss) {
        Log.i("RecyclerAdapter", list.get(i).toString());
        MlssViewHolder holder = (MlssViewHolder) viewHolder;
        Mlss mlss = (Mlss) list.get(i);
        holder.title.setText(mlss.getName());
        //创建适配器
        MlssAdapter adapter = new MlssAdapter(context);

        //创建布局管理器
        LinearLayoutManager manager = new LinearLayoutManager(context);
        manager.setOrientation(LinearLayoutManager.VERTICAL);
        holder.recyclerView.setLayoutManager(manager);
        holder.recyclerView.setAdapter(adapter);
        List<Bean> al = mlss.getCommodityList();
        adapter.setData(al);


    } else if (viewHolder instanceof PzshViewHolder && list.get(i) instanceof Pzsh) {
        Log.i("RecyclerAdapter", list.get(i).toString());
        PzshViewHolder holder = (PzshViewHolder) viewHolder;
        Pzsh pzsh = (Pzsh) list.get(i);
        holder.title.setText(pzsh.getName());
        //创建适配器
        PzshAdapter adapter = new PzshAdapter(context);

        //创建布局管理器
        GridLayoutManager manager = new GridLayoutManager(context, 2);
        holder.recyclerView.setLayoutManager(manager);
        holder.recyclerView.setAdapter(adapter);
        List<Bean> al = pzsh.getCommodityList();
        adapter.setData(al);
    }
}

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

public void setData(List<AllBean> list) {
    this.list = list;
    notifyDataSetChanged();
}

@Override
public int getItemViewType(int position) {
    if (list.get(position) instanceof Rxxp) {
        return 0;
    } else if (list.get(position) instanceof Mlss) {
        return 1;
    } else {
        return 2;
    }

}

public class RxxpViewHolder extends RecyclerView.ViewHolder {

    TextView title;
    RecyclerView recyclerView;

    public RxxpViewHolder(@NonNull View itemView) {
        super(itemView);
        title = (TextView) itemView.findViewById(R.id.tv_title);
        recyclerView = (RecyclerView) itemView.findViewById(R.id.rxxp_recycler);
    }
}

public class PzshViewHolder extends RecyclerView.ViewHolder {

    TextView title;
    RecyclerView recyclerView;

    public PzshViewHolder(@NonNull View itemView) {
        super(itemView);
        title = (TextView) itemView.findViewById(R.id.tv_title);
        recyclerView = (RecyclerView) itemView.findViewById(R.id.recycler);
    }
}

public class MlssViewHolder extends RecyclerView.ViewHolder {

    TextView title;
    RecyclerView recyclerView;

    public MlssViewHolder(@NonNull View itemView) {
        super(itemView);
        title = (TextView) itemView.findViewById(R.id.home_list_01_text);
        recyclerView = (RecyclerView) itemView.findViewById(R.id.recycler_mlss);
    }
}

}
RxxpAdapter
public class RxxpAdapter extends RecyclerView.Adapter<RxxpAdapter.ViewHolder> {

private Context context;
private List<Bean> al=new ArrayList<>();

public RxxpAdapter(Context context) {
    this.context = context;
}

@NonNull
@Override
public ViewHolder onCreateViewHolder(@NonNull ViewGroup viewGroup, int i) {
    View view=View.inflate(context,R.layout.rxxp_item,null);
    ViewHolder holder=new ViewHolder(view);
    return holder;
}

@Override
public void onBindViewHolder(@NonNull ViewHolder viewHolder, int i) {
    viewHolder.title.setText(al.get(i).getCommodityName());
    viewHolder.price.setText("¥"+al.get(i).getPrice());
    Glide.with(context).load(al.get(i).getMasterPic()).into(viewHolder.image);
}

@Override
public int getItemCount() {
    return al.size();
}

public void setData(List<Bean> list) {
    this.al=list;
}

public class ViewHolder extends RecyclerView.ViewHolder {
    TextView title ,price;
    ImageView image;
    public ViewHolder(@NonNull View itemView) {
        super(itemView);
        title=(TextView) itemView.findViewById(R.id.rxxp_title);
        price=(TextView) itemView.findViewById(R.id.rxxp_price);
        image=(ImageView) itemView.findViewById(R.id.rxxp_img);
    }
}

}
MlssAdapter
public class MlssAdapter extends RecyclerView.Adapter<MlssAdapter.MlssViewHolder> {

private Context context;
private List<Bean> list=new ArrayList<>();

public MlssAdapter(Context context) {
    this.context = context;
}

@NonNull
@Override
public MlssViewHolder onCreateViewHolder(@NonNull ViewGroup viewGroup, int i) {
    View view=View.inflate(context, R.layout.mlss_item,null);
    MlssViewHolder holder=new MlssViewHolder(view);
    return holder;
}

@Override
public void onBindViewHolder(@NonNull MlssViewHolder viewHolder, int i) {
    viewHolder.title.setText(list.get(i).getCommodityName());
    viewHolder.price.setText("¥"+list.get(i).getPrice());
    Glide.with(context).load(list.get(i).getMasterPic()).into(viewHolder.iamge);
    Toast.makeText(context,list.get(i).toString(),Toast.LENGTH_LONG).show();
}

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

public void setData(List<Bean> al) {
    this.list=al;
    notifyDataSetChanged();
}

public class MlssViewHolder extends RecyclerView.ViewHolder {
    TextView title,price;
    ImageView iamge;
    public MlssViewHolder(@NonNull View itemView) {
        super(itemView);
        title=(TextView) itemView.findViewById(R.id.tv_title);
        price=(TextView) itemView.findViewById(R.id.price);
        iamge=(ImageView) itemView.findViewById(R.id.image_view);
    }
}

}
PzshAdapter
public class PzshAdapter extends RecyclerView.Adapter<PzshAdapter.ViewHolder> {

 private Context context;
 private List<Bean> list=new ArrayList<>();

public PzshAdapter(Context context) {
    this.context = context;
}

@NonNull
@Override
public ViewHolder onCreateViewHolder(@NonNull ViewGroup viewGroup, int i) {
    View view=View.inflate(context, R.layout.pzsh_item,null);
    ViewHolder holder=new ViewHolder(view);
    return holder;
}

@Override
public void onBindViewHolder(@NonNull ViewHolder viewHolder, int i) {
    viewHolder.title.setText(list.get(i).getCommodityName());
    viewHolder.price.setText("¥"+list.get(i).getPrice());
    Glide.with(context).load(list.get(i).getMasterPic()).into(viewHolder.iamge);
}

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

public void setData(List<Bean> al) {
        this.list=al;
        notifyDataSetChanged();
}

public class ViewHolder extends RecyclerView.ViewHolder {
    TextView title,price;
    ImageView iamge;
    public ViewHolder(@NonNull View itemView) {
        super(itemView);
        title=(TextView) itemView.findViewById(R.id.tv_title);
        price=(TextView) itemView.findViewById(R.id.price);
        iamge=(ImageView) itemView.findViewById(R.id.image_view);
    }
}

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值