package bwei.com.myjd.adapter; import android.content.Context; import android.content.Intent; import android.os.Handler; import android.os.Message; import android.support.v7.widget.GridLayoutManager; import android.support.v7.widget.RecyclerView; import android.util.Log; import android.view.View; import android.view.ViewGroup; import android.widget.TextView; import android.widget.Toast; import java.util.ArrayList; import java.util.List; import bwei.com.myjd.R; import bwei.com.myjd.bean.Shouyebean; import bwei.com.myjd.bean.fl_F_Bean; import bwei.com.myjd.myview.NoticeView; import bwei.com.myjd.view.FlXiangQingActivity2; /** * author:Created by WangZhiQiang on 2018/2/14 0014. */ public class MyshouyeAdapter extends RecyclerView.Adapter<RecyclerView.ViewHolder> { //定义常量 确定多条目加载类型 final static int TYPE_ONE=1; final static int TYPE_TWO=2; final static int TYPE_THREE=3; // private final List<Shouyebean.DataBean> list; private static final String TAG = "MyshouyeAdapter"; private Context context; private Shouyebean shouyebean; private List<fl_F_Bean.DataBean> data; private List<String> notices; private boolean isRun = true; private Handler timeHandler; private long mHour = 02; private long mMin = 15; private long mSecond = 36; private List<Shouyebean.TuijianBean.ListBean> list; private List<Shouyebean.TuijianBean.ListBean> list1; /*public MyshouyeAdapter(Context context, Shouyebean shouyebean) { this.context = context; this.shouyebean = shouyebean; this.list = shouyebean.getData(); }*/ public MyshouyeAdapter(Context context, Shouyebean shouyebean, List<fl_F_Bean.DataBean> data) { this.context = context; this.shouyebean = shouyebean; this.data = data; // this.list = shouyebean.getData(); } @Override public RecyclerView.ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) { switch (viewType) { case TYPE_ONE: View inflate = View.inflate(context, R.layout.shouyerc, null); Jiugongge jiugongge = new Jiugongge(inflate); return jiugongge; case TYPE_TWO: View inflate1 = View.inflate(context, R.layout.shouye_tuijian, null); Tuijian tuijian = new Tuijian(inflate1); return tuijian; case TYPE_THREE: View inflate2 = View.inflate(context, R.layout.shouyemiaosha_item, null); Miaosha miaosha = new Miaosha(inflate2); return miaosha; //fragment_child1_duo布局文件为RecyclerView控件 //*case TYPE_TWO: /* View inflate1 = View.inflate(context, R.layout.fragment_child1_duo, null); feileihodler = new Feileihodler(inflate1); return feileihodler; //共用一个布局文件 case TYPE_THREE: View inflate2 = View.inflate(context, R.layout.fragment_child1_duo, null); Xiangqing xiangqing=new Xiangqing(inflate2); return xiangqing;*//**//**/ } return null; } @Override public void onBindViewHolder(final RecyclerView.ViewHolder holder, int position) { if(holder instanceof Jiugongge){ JiugonggeAdapter jiugonggeAdapter = new JiugonggeAdapter(data,context); ((Jiugongge) holder).shouye_rc.setAdapter(jiugonggeAdapter); ((Jiugongge) holder).shouye_rc.setLayoutManager(new GridLayoutManager(context,2,GridLayoutManager.HORIZONTAL,false)); notices = new ArrayList<>(); notices.add("大促销下单拆福袋,亿万新年红包随便拿"); notices.add("家电五折团,抢十亿无门槛现金红包"); notices.add("星球大战剃须刀首发送200元代金券"); ((Jiugongge) holder).notice_view.addNotice(notices); ((Jiugongge) holder).notice_view.startFlipping(); ((Jiugongge) holder).notice_view.setOnNoticeClickListener(new NoticeView.OnNoticeClickListener() { @Override public void onNotieClick(int position, String notice) { Toast.makeText(context, notices.get(position),Toast.LENGTH_SHORT).show(); } }); } if(holder instanceof Tuijian){ Log.d(TAG, "onBindViewHolder: 首页推荐总"); ((Tuijian) holder).shouye_tuijian_tv.setText("京东推荐"); list1 = shouyebean.getTuijian().getList(); Log.d(TAG, "onBindViewHolder: 首页推荐总"+ list1.size()); TuijianAdapter tuijianAdapter = new TuijianAdapter(context, list1); ((Tuijian) holder).shouye_tuijian_rc.setAdapter(tuijianAdapter); ((Tuijian) holder).shouye_tuijian_rc.setLayoutManager(new GridLayoutManager(context,1,GridLayoutManager.HORIZONTAL,false)); tuijianAdapter.huidiao(new TuijianAdapter.Itemclick() { @Override public void itemclick(View view, int position) { int pid = list1.get(position).getPid(); Intent intent = new Intent(context, FlXiangQingActivity2.class); intent.putExtra("pid", pid+""); context.startActivity(intent); } }); } if(holder instanceof Miaosha){ ((Miaosha) holder).shouue_miaosha_tv.setText("京东秒杀"); ((Miaosha) holder).shouue_miaosha_tv1.setText("16点场"); startRun(); timeHandler = new Handler() { @Override public void handleMessage(Message msg) { super.handleMessage(msg); if (msg.what == 1) { computeTime(); if (mHour < 10) { ((Miaosha) holder).tv_hour.setText("0" + mHour + ""); } else { ((Miaosha) holder).tv_hour.setText("0" + mHour + ""); } if (mMin < 10) { ((Miaosha) holder).tv_minute.setText("0" + mMin + ""); } else { ((Miaosha) holder).tv_minute.setText(mMin + ""); } if (mSecond < 10) { ((Miaosha) holder).tv_second.setText("0" + mSecond + ""); } else { ((Miaosha) holder).tv_second.setText(mSecond + ""); } } } }; List<Shouyebean.MiaoshaBean.ListBeanX> list = shouyebean.getMiaosha().getList(); MiaoshaAdapter miaoshaAdapter = new MiaoshaAdapter(context, list); ((Miaosha) holder).miaosha_rv.setAdapter(miaoshaAdapter); ((Miaosha) holder).miaosha_rv.setLayoutManager(new GridLayoutManager(context,2)); } } /** * 开启倒计时 */ private void startRun() { new Thread(new Runnable() { @Override public void run() { // TODO Auto-generated method stub while (isRun) { try { Thread.sleep(1000); // sleep 1000ms Message message = Message.obtain(); message.what = 1; timeHandler.sendMessage(message); } catch (Exception e) { e.printStackTrace(); } } } }).start(); } /** * 倒计时计算 */ private void computeTime() { mSecond--; if (mSecond < 0) { mMin--; mSecond = 59; if (mMin < 0) { mMin = 59; mHour--; } } } @Override public int getItemCount() { return 3; } @Override public int getItemViewType(int position) { if(position == 0){ return TYPE_ONE; } if(position == 1){ return TYPE_TWO; } if(position == 2){ return TYPE_THREE; } return 0; } class Jiugongge extends RecyclerView.ViewHolder { public RecyclerView shouye_rc; public NoticeView notice_view; public Jiugongge(View itemView) { super(itemView); this.shouye_rc = itemView.findViewById(R.id.shouye_rc); this.notice_view = itemView.findViewById(R.id.notice_view); } } class Tuijian extends RecyclerView.ViewHolder{ public TextView shouye_tuijian_tv; public RecyclerView shouye_tuijian_rc; public Tuijian(View itemView) { super(itemView); this.shouye_tuijian_tv = itemView.findViewById(R.id.shouye_tuijian_tv); this.shouye_tuijian_rc = itemView.findViewById(R.id.shouye_tuijian_rc); } } class Miaosha extends RecyclerView.ViewHolder{ public TextView shouue_miaosha_tv; public TextView shouue_miaosha_tv1; public TextView tv_hour; public TextView tv_minute; public TextView tv_second; public RecyclerView miaosha_rv; public Miaosha(View itemView) { super(itemView); this.shouue_miaosha_tv=itemView.findViewById(R.id.shouue_miaosha_tv); this.shouue_miaosha_tv1=itemView.findViewById(R.id.shouue_miaosha_tv1); this.tv_hour=itemView.findViewById(R.id.tv_hour); this.tv_minute=itemView.findViewById(R.id.tv_minute); this.tv_second=itemView.findViewById(R.id.tv_second); this.miaosha_rv=itemView.findViewById(R.id.miaosha_rv); } } }
多条目加载
最新推荐文章于 2019-01-06 19:11:32 发布