dinaji

来源:互联网 发布:淘宝推广网站大全 编辑:程序博客网 时间:2024/06/06 00:45
public class MyAdapter extends RecyclerView.Adapter<MyAdapter.ViewHolder> implements View.OnClickListener{
    private List<Tui> list;
    private static  TextView te_title;
    private static ImageView te_tuitu;
    private static  TextView te_price;
    private Context context;


    public MyAdapter(List<Tui> list,Context context) {
        this.list = list;
        this.context = context;
    }
    private OnItemClickListener mOnItemClickListener = null;


    //define interface
    public static interface OnItemClickListener {
        void onItemClick(View view , int position);
    }


    @Override
    public ViewHolder onCreateViewHolder(ViewGroup viewGroup,  int viewType) {
        View view = LayoutInflater.from(viewGroup.getContext()).inflate(R.layout.tui, viewGroup, false);
        ViewHolder vh = new ViewHolder(view);
        //将创建的View注册点击事件
        view.setOnClickListener(this);




        return vh;
    }


    @Override
    public void onBindViewHolder(ViewHolder viewHolder,  int position) {
        te_title.setText(list.get(position).title);
        te_price.setText(list.get(position).bargainPrice+"");
        String images = list.get(position).images;
        String[] split = images.split("\\|");
        Glide.with(context).load(split[0]).into(te_tuitu);
        //将position保存在itemView的Tag中,以便点击时进行获取
        viewHolder.itemView.setTag(position);
    }


    @Override
    public void onClick(View v) {
        if (mOnItemClickListener != null) {
            //注意这里使用getTag方法获取position
            mOnItemClickListener.onItemClick(v,(int)v.getTag());
        }
    }


    public void setOnItemClickListener(OnItemClickListener listener) {
        this.mOnItemClickListener = listener;
    }




    //获取数据的数量
    @Override
    public int getItemCount() {


        return list.size();
    }
    //自定义的ViewHolder,持有每个Item的的所有界面元素
    public static class ViewHolder extends RecyclerView.ViewHolder {
        public TextView mTextView;


        public ViewHolder(View itemView) {
            super(itemView);
            te_title = itemView.findViewById(R.id.te_title);
            te_tuitu = itemView.findViewById(R.id.te_tuitu);
            te_price = itemView.findViewById(R.id.te_price);
        }
    }
}
原创粉丝点击