继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续
感谢您的支持,我会继续努力的
赞赏金额会直接到老师账户
将二维码发送给自己后长按识别
微信支付
支付宝支付

recycleView通用Adapter

守着星空守着你
关注TA
已关注
手记 211
粉丝 39
获赞 266

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

打开App,阅读手记
0人推荐
发表评论
随时随地看视频慕课网APP

热门评论

还是 评价下吧 你的程序里面 又一个小小的问题,而不是bug

查看全部评论