天天看点

解决NestedScrollView 嵌套 RecyclerView出现的卡顿,上拉刷新无效

解决卡顿的方法最简单的就是设置RecyclerView的android:nestedScrollingEnabled="false",放弃自己的滑动,交给外部的NestedScrollView处理,就没有出现卡顿的现象了

至于RecyclerView的上拉刷新,可以监听NestedScrollView的滑动监听,具体代码如下:

mNestedScrollView.setOnScrollChangeListener(new NestedScrollView.OnScrollChangeListener() {
    @Override
    public void onScrollChange(NestedScrollView v, int scrollX, int scrollY, int oldScrollX, int oldScrollY) {
        if (scrollY > oldScrollY) {
            // 向下滑动
        }

        if (scrollY < oldScrollY) {
            // 向上滑动
        }

        if (scrollY == 0) {
            // 顶部
        }

        if (scrollY == (v.getChildAt(0).getMeasuredHeight() - v.getMeasuredHeight())) {
            // 上拉刷新实现
        }
    }
});