Android swiperefreshlayout 实现上拉刷新 加载

swiperefreshlayout是V4包下控件 安卓自带,不需要导入任何依赖

private void initPullRefresh() {
        /**
         * 下拉刷新回调方法
         */
        srl.setOnRefreshListener(new SwipeRefreshLayout.OnRefreshListener() {
            @Override
            public void onRefresh() {
                //前面添加数据 用集合传过去
                Toast.makeText(MainActivity.this,"刷新",Toast.LENGTH_SHORT).show();
                if(data!=null&&data.size()!=0){
                    data.clear();
                }
     
                initData(page);//请求主页数据
                ada.notifyDataSetChanged();
                srl.setRefreshing(false);//关闭
            }
        });
    }

private void initLoadMoreListener() {
 
   //对Recyclerview 的一个滑动监听
  rv.setOnScrollListener(new RecyclerView.OnScrollListener() {
            int lastVisibleItem ;
            @Override
            public void onScrollStateChanged(RecyclerView recyclerView, int newState) {
                super.onScrollStateChanged(recyclerView, newState);

                //判断RecyclerView的状态 是空闲时,同时,是最后一个可见的ITEM时才加载
                if(newState==RecyclerView.SCROLL_STATE_IDLE&&lastVisibleItem+1==ada.getItemCount()){
                    Toast.makeText(MainActivity.this,"加载",Toast.LENGTH_SHORT).show();
                    initData(page++);//请求主页数据
                    ada.notifyDataSetChanged();
                }
            }
            @Override
            public void onScrolled(RecyclerView recyclerView, int dx, int dy) {
                super.onScrolled(recyclerView, dx, dy);

                LinearLayoutManager layoutManager = (LinearLayoutManager) recyclerView.getLayoutManager();
                //最后一个可见的ITEM
                lastVisibleItem=layoutManager.findLastVisibleItemPosition();
            }
        });
    }



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值