判断NestedScrollView是否已经滑到最底部, 另附对recyclerView滑到底的判断

判断NestedScrollView是否已经滑到最底部

NestedScrollView只有一个直接子view , 记做child.
如果child的高度小于等于NestedScrollView的scrollY 与NestedScrollView的高度和, 那么说明已经到底.

更具体的:

...
            NestedScrollView nestedScrollView = ...
            int scrollY = nestedScrollView.getScrollY();
            View onlyChild = nestedScrollView.getChildAt(0);
            if (onlyChild.getHeight() <= scrollY + nestedScrollView.getHeight()) {   // 如果满足就是到底部了
                return true;
            }
...

判断RecyclerView是否已经滑到最底部

方法一

 if (recyclerView.computeVerticalScrollExtent() + recyclerView.computeVerticalScrollOffset()
                    >= recyclerView.computeVerticalScrollRange()){
                return true;
            }

方法二

RecyclerView.canScrollVertically(1)的值表示是否能向上滚动,false表示已经滚动到底部
RecyclerView.canScrollVertically(-1)的值表示是否能向下滚动,false表示已经滚动到顶部

你可能感兴趣的:(判断NestedScrollView是否已经滑到最底部, 另附对recyclerView滑到底的判断)