判断RecycleView是否滑动到底部


最近做项目要判断RecycleView是否滑动到底部,在网上找了很多方法,但试用之后都会有点小bug。

后来找到一个方法,暂时没有发现bug。和我想要的一样。


其实ReycleViewde判断滑动到底部的方法很多,这里只说一种


就是根据:RecycleView右边自带的滑动条判断的



   //1监听recyclView是否滑动到底部
      recycleView.setOnScrollListener(new RecyclerView.OnScrollListener() {

          //判断是不是往上拖动
          public boolean isLastReflash;


          @Override
          public void onScrollStateChanged(RecyclerView recyclerView, int newState) {
              super.onScrollStateChanged(recyclerView, newState);
            
              /*
              * 滑动停止之后检测是否滑动到底部
              **/
              if(newState == RecyclerView.SCROLL_STATE_IDLE &&isLastReflash){

                    
                   if(recycleView.computeVerticalScrollExtent()+recyclerView.computeVerticalScrollOffset()>=recyclerView.computeVerticalScrollRange()){
                      // Toast.makeText(getContext(),"滑动到底部",Toast.LENGTH_SHORT).show();
                    
                          //滑动到底部的时候一般要做加载更多的数据的操作...

                       /*
                       * 提示适配器
                       * */
                       recycleViewAdapter.notifyDataSetChanged();
                   }
              }
          }



        //根据dy,dx可以判断是往哪个方向滑动
          @Override
          public void onScrolled(RecyclerView recyclerView, int dx, int dy) {
              super.onScrolled(recyclerView, dx, dy);
              if(dy>0){
                  isLastReflash = true;
              }else{
                  isLastReflash = false;
              }
          }
      });



可能你好像做一个返回顶部的逻辑操作,也是可以获取RecycleView的布局管理器,设置要滚到的地方即可

 LinearLayoutManager  linearLayoutManager=  (LinearLayoutManager)recycleView.getLayoutManager();
                linearLayoutManager.scrollToPositionWithOffset(0,0);



最近写的都是小知识点,毕竟自己菜,如果发现有错误,希望指出。。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值