解决卡顿的方法最简单的就是设置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())) {
// 上拉刷新实现
}
}
});