为了账号安全,请及时绑定邮箱和手机立即绑定

recycleView通用Adapter

标签:
Android

public class CreditManagerAdapter extends RecyclerView.Adapter<RecyclerView.ViewHolder> {

    private Context mContext;

    private List<CreditManager> datas;

    private final LayoutInflater mLayoutInflater;

    private MyItemClickListener mItemClickListener;

    public CreditManager getDataItem(int position) {

        return datas == null ? null : datas.get(position);

    }

    public CreditManagerAdapter(Context mContext, List<CreditManager> mDatas) {

        this.mContext = mContext;

        this.datas = mDatas;

        mLayoutInflater = LayoutInflater.from(mContext);

    }

    public void update(List<CreditManager> mDatas) {

        this.datas = mDatas;

        //this.notifyDataSetChanged();

    }

    public void notifyData(List<CreditManager> mDatas) {

        this.datas = mDatas;

        this.notifyDataSetChanged();

    }

    public int getLayout() {

        return R.layout.creditmanager_dialog_item;

    }

    @Override

    public RecyclerView.ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {

        View v = LayoutInflater.from(parent.getContext()).inflate(getLayout(), parent, false);

        RecyclerView.ViewHolder viewHolder = new ViewHolder(v, mItemClickListener);

        return viewHolder;

    }

    /**

     * 设置Item点击监听

     *

     * @param listener

     */

    public void setOnItemClickListener(MyItemClickListener listener) {

        mItemClickListener = listener;

    }

    @RequiresApi(api = Build.VERSION_CODES.LOLLIPOP)

    @Override

    public void onBindViewHolder(RecyclerView.ViewHolder holder, final int p) {

        final ViewHolder mHolder = (ViewHolder) holder;

        CreditManager data = datas.get(p);

    }

    @Override

    public int getItemCount() {

        return datas == null ? 0 : datas.size();

    }

    public interface MyItemClickListener {

        public void OnClickListener(int position);

    }

    static class ViewHolder extends RecyclerView.ViewHolder implements View.OnClickListener {

        private MyItemClickListener mItemClickListener;

        ViewHolder(View view, MyItemClickListener mItemClickListener) {

            super(view);

            ButterKnife.bind(this, view);

            this.mItemClickListener = mItemClickListener;

            view.setOnClickListener(this);

        }

        @Override

        public void onClick(View v) {

            if (mItemClickListener != null) {

                mItemClickListener.OnClickListener(getPosition());

            }

        }

    }

}

原文链接:http://www.apkbus.com/blog-796354-68598.html

点击查看更多内容
TA 点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
  • 推荐
  • 1
  • 收藏
  • 共同学习,写下你的评论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消