上拉加载更多

2020-06-16  本文已影响0人  小耗子_20da

类名SwipeRefreshAndLoadingLayout,还在进一步测试中,暂未加入开源库。
从SwipeRefreshLayout改进而来,具有SwipeRefreshLayout控件的所有属性和方法。

1、SwipeRefreshLayout 的常用方法##

        //设置旋转进度条的颜色,手指下滑过程中显示第一个颜色,手指松开后会在所有颜色总循环渐变切换
        mBinding.swipeRefreshAndLoadingLayout.setColorSchemeColors(0xffff0000, 0xff00ff00, 0xff0000ff, 0xffffff00, 0xff00ffff);
        // mBinding.swipeRefreshAndLoadingLayout.setColorSchemeResources();//如果是资源id,则使用该方法
        //设置指示器大小,只有默认(DEFAULT)和大号(LARGE)
        mBinding.swipeRefreshAndLoadingLayout.setSize(SwipeRefreshAndLoadingLayout.LARGE);
        //触发刷新的距离(手指下滑的距离)
        mBinding.swipeRefreshAndLoadingLayout.setDistanceToTriggerSync(800);
        //设置指示器背景颜色
        mBinding.swipeRefreshAndLoadingLayout.setProgressBackgroundColorSchemeColor(0xffff00ff);

        // scale:指示器是否缩放, start:指示器出现时的位置 , end:手指放开后指示器悬停的位置
        mBinding.swipeRefreshAndLoadingLayout.setProgressViewOffset(false, 200, 300);
        //和setProgressViewOffset一样
        mBinding.swipeRefreshAndLoadingLayout.setProgressViewEndTarget(true, 500);
        //设置弹弓距离,可以理解为指示器跟随手指下滑的偏移量
        mBinding.swipeRefreshAndLoadingLayout.setSlingshotDistance(400);

2、SwipeRefreshLayout 下拉刷新回调

//下拉结束后背调用
mBinding.swipeRefreshAndLoadingLayout.setOnRefreshListener(() -> {
      //在这里请求数据
});

3、收起指示器

 //数据请求结束后(不管是否请求到数据),调用该方法收起指示器
 mBinding.swipeRefreshAndLoadingLayout.setRefreshing(false);

4、SwipeRefreshAndLoadingLayout 上拉加载回调

//上拉结束后被调用
mBinding.swipeRefreshAndLoadingLayout.setOnLoadingListener(() -> {
    //在这里请求数据
});

5、收起指示器

//数据请求结束后,如果请求到数据,则执行这句
mBinding.swipeRefreshAndLoadingLayout.setLoading(false);
//如果没有更多数据了,还需要添加下面这句
mBinding.swipeRefreshAndLoadingLayout.setNoMore(true, "没有更多数据了");

注意:

SwipeRefreshAndLoadingLayout 需要设置上拉或下拉监听器才会有效果

上一篇 下一篇

猜你喜欢

热点阅读