package com.example.zhoukao3.adapter;
import android.content.Context;
import android.support.annotation.NonNull;
import android.support.v7.widget.LinearLayoutManager;
import android.support.v7.widget.RecyclerView;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ImageView;
import android.widget.TextView;
import com.bumptech.glide.Glide;
import com.example.zhoukao3.R;
import com.example.zhoukao3.bean.BannerBean;
import com.example.zhoukao3.bean.ShopBean;
import com.jcodecraeer.xrecyclerview.XRecyclerView;
import com.stx.xhb.xbanner.XBanner;
import java.util.List;
import java.util.zip.Inflater;
public class MyAdapter extends XRecyclerView.Adapter<XRecyclerView.ViewHolder> {
private final int Pzsh_type = 2;
private final int Mlss_type = 3;
private final int Rxxp_type = 1;
private final int Banner_type = 0;
Context context;
ShopBean shopBean;
BannerBean bannerBean;
private XBannerHolder xBannerHolder;
private RxxpHolder rxxpHolder;
private PzshHolder pzshHolder;
private MlssHolder mlssHolder;
private List<BannerBean.ResultBean> result;
private List<ShopBean.ResultBean.RxxpBean.CommodityListBean> list1;
private LinearLayoutManager linearLayoutManager;
private List<ShopBean.ResultBean.PzshBean.CommodityListBeanX> list;
private List list2;
public MyAdapter(Context context, ShopBean shopBean, BannerBean bannerBean) {
this.context = context;
this.shopBean = shopBean;
this.bannerBean = bannerBean;
}
@NonNull
@Override
public XRecyclerView.ViewHolder onCreateViewHolder(@NonNull ViewGroup viewGroup, int i) {
View view;
if (i==Banner_type){
view=LayoutInflater.from(context).inflate(R.layout.banner_item,viewGroup,false);
xBannerHolder = new XBannerHolder(view);
return xBannerHolder;
}else if (i==Rxxp_type){
view=LayoutInflater.from(context).inflate(R.layout.rxxp,viewGroup,false);
rxxpHolder = new RxxpHolder(view);
return rxxpHolder;
}else if (i==Pzsh_type){
view=LayoutInflater.from(context).inflate(R.layout.pzsh,viewGroup,false);
pzshHolder = new PzshHolder(view);
return pzshHolder;
}else {
view=LayoutInflater.from(context).inflate(R.layout.mlss,viewGroup,false);
mlssHolder = new MlssHolder(view);
return mlssHolder;
}
}
@Override
public void onBindViewHolder(@NonNull final XRecyclerView.ViewHolder viewHolder, final int i) {
if (viewHolder instanceof XBannerHolder){
xBannerHolder= (XBannerHolder) viewHolder;
result = bannerBean.getResult();
int realCount = xBannerHolder.xbanner_d.getRealCount();
if (realCount<=0) {
xBannerHolder.xbanner_d.setData(result,null);
}
}else if (viewHolder instanceof RxxpHolder){
rxxpHolder= (RxxpHolder) viewHolder;
rxxpHolder.text_1.setText(shopBean.getResult().getRxxp().getName());
linearLayoutManager = new LinearLayoutManager(context, LinearLayoutManager.HORIZONTAL, false);
rxxpHolder.rec_1.setLayoutManager(linearLayoutManager);
list1 = shopBean.getResult().getRxxp().getCommodityList();
RxxpAdapter adapter=new RxxpAdapter(context,list1);
rxxpHolder.rec_1.setAdapter(adapter);
}else if (viewHolder instanceof PzshHolder){
pzshHolder= (PzshHolder) viewHolder;
pzshHolder.text_2.setText(shopBean.getResult().getPzsh().getName());
LinearLayoutManager linearLayoutManager2=new LinearLayoutManager(context, LinearLayoutManager.VERTICAL,false);
pzshHolder.rec_2.setLayoutManager(linearLayoutManager2);
list2 = shopBean.getResult().getPzsh().getCommodityList();
PzshAdapter pzshAdapter=new PzshAdapter(context,list2);
pzshHolder.rec_2.setAdapter(pzshAdapter);
}else if (viewHolder instanceof MlssHolder){
}
}
@Override
public int getItemCount() {
return 4;
}
@Override
public int getItemViewType(int position) {
if (position==0){
return Banner_type;
}else if(position==1){
return Rxxp_type;
}else if (position==2){
return Pzsh_type;
}else if (position==3){
return Mlss_type;
}
return super.getItemViewType(position);
}
public class XBannerHolder extends RecyclerView.ViewHolder{
private final XBanner xbanner_d;
public XBannerHolder(@NonNull View itemView) {
super(itemView);
xbanner_d = itemView.findViewById(R.id.xbanner_d);
xbanner_d.setmAdapter(new XBanner.XBannerAdapter() {
@Override
public void loadBanner(XBanner banner, View view, int position) {
Glide.with(context).load(result.get(position).getImageUrl()).into((ImageView) view);
}
});
}
}
public class RxxpHolder extends RecyclerView.ViewHolder{
private final RecyclerView rec_1;
private final TextView text_1;
public RxxpHolder(@NonNull View itemView) {
super(itemView);
rec_1 = itemView.findViewById(R.id.rec_1);
text_1 = itemView.findViewById(R.id.text_1);
}
}
public class PzshHolder extends RecyclerView.ViewHolder{
private final TextView text_2;
private final RecyclerView rec_2;
public PzshHolder(@NonNull View itemView) {
super(itemView);
text_2 = itemView.findViewById(R.id.text_2);
rec_2 = itemView.findViewById(R.id.rec_2);
}
}
public class MlssHolder extends RecyclerView.ViewHolder{
public MlssHolder(@NonNull View itemView) {
super(itemView);
}
}
}