(二) LtRecyclerView v2.x (更多实用方法)

(一) 超简单自定义上下刷新布局-LtRecyclerView v2.x版本(基本使用)

(二) LtRecyclerView v2.x (更多实用方法)

(三) LtRecyclerView v2.x (自定义刷新View)

1.设置上拉加载和下拉刷新和回调

        rv.setOnUpAndDownListener(new OnUpAndDownListener() {
                    @Override
                    public void up() {
                        //上拉加载时的回调
                    }

                    @Override
                    public void down() {
                        //下拉刷新时的回调
                    }
                });
        //禁用上拉加载:new适配器的时候传null
        new LtAdapter(null);
        //禁用下拉刷新:获取刷新View,并设置为不可用
        rv.getRefreshLayout().setEnabled(false);

2.设置条目点击事件和条目长按事件(在onLtBindViewHolder()方法中设置点击或长按事件优先级大于该方法)

        adapter.setOnRvItemClickListener(new OnRvItemClickListener() {
            @Override
            public void onItemClick(View itemView, int position) {
                //条目的点击事件
            }
        });
        adapter.setOnRvItemLongClickListener(new OnRvItemLongClickListener() {
            @Override
            public void onItemLongClick(View itemView, int position) {
                //条目的长按事件     
            }
        });

3.添加头布局和尾布局

        //添加头布局
        adapter.addHeadView(View);
        //添加头布局到指定位置,注意可能会数组越界异常
        adapter.addHeadView(View, 0);
        //获取头布局的集合
        adapter.getHeadList()
        
        //添加尾布局(添加到最下面)
        adapter.addTailView(View);
        //添加尾布局到指定位置,注意可能会数组越界异常
        adapter.addTailView(View, 0);
        //获取尾布局的集合
        adapter.getTailList()

4.添加没条目时展示的View(或者添加没条目和有条目时的回调事件)

        //设置没数据时展示的TextView
        rv.setNoItemText("暂无数据");
        //设置没数据时展示的View
        rv.setNoItemView(View);
        
        //没有条目时的回调
        adapter.addOnNoItemListener(new OnNoItemListener() {
            @Override
            public void noItem() {
                //从有数据变为没有数据时触发
            }

            @Override
            public void haveItem() {
                //从没有数据变为有数据是触发
            }
        });
            app:noItemText="暂无数据"//设置没有数据时展示的TextView
            app:noItemView="@drawable/ic_launcher"//设置没数据时展示的View

注意:app:noItemText和noItemView两个方法不能同时设置

setHeadersIsItem(boolean)//头布局算不算在条目内(用于noItem算法)setTailsIsItem(boolean)//头布局算不算在条目内(用于noItem算法)
noItemIsHideRecyclerView(boolean)//设置是否在没有条目时隐藏RecyclerView

5.添加分割线(也可以用图片)

        //添加2px,d5d5d5的分割线
        rv.addItemDecoration_line();
        //添加d5d5d5颜色的分割线,并指定高度
        rv.addItemDecoration_line(1);
        //添加分割线,指定高度和颜色
        rv.addItemDecoration_line(1, getResources().getColor(R.color.colorAccent));
        //添加图片分割线
        rv.addItemDecoration_drawable(R.mipmap.ic_launcher);
        //设置分割线高度,可以和颜色一起设置
        app:dividerHeight="1dp"
        //设置分割线颜色
        app:dividerColor="@color/colorAccent"
        //设置图片分割线
        app:dividerDrawable="@mipmap/ic_launcher"

点击查看(三)自定义刷新View

对Kotlin或KMP感兴趣的同学可以进Q群 101786950

如果这篇文章对您有帮助的话

可以扫码请我喝瓶饮料或咖啡(如果对什么比较感兴趣可以在备注里写出来)

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值