1:使用CoordinatorLayout +AppBarLayout替换NestedScrollView,同样可以实现页面滑动效果,而且可以给recycleView增加滑动监听事件。
2:第二种方法就是不给RecycleView增加监听事件,给NestedScrollView增加onScrollChangeListener,示例代码如下:
1. scrollView.setOnScrollChangeListener(new
NestedScrollView.OnScrollChangeListener() {
@Override
public void onScrollChange(NestedScrollView nestedScrollView, int scrollX, int scrollY, int
oldScrollX, int oldScrollY) {
if(scrollY>=nestedScrollView.getChildAt(0).getMeasuredHeight()-nestedScrollView.getMeasuredHeight()){
loadMore();
}
}
});
NestedScrollView.getMeasuredHeight()获取的只是当前显示出来的一屏的测量高度(不包括未滑动出来的距离),NestedScrollView的总高度可以调用NestedScrollView.getChildAt(0).getMeasuredHeight()来获取。这里使用>=是因为scrollY在滑动过程是间歇获取的,不一定可以获取到等于的情况。