需求:需要在recyclerView的开始、结束增加图标,判断是否到达顶点。即滑动到顶部时顶部的按钮隐藏、底部的按钮显示;滑动到底部时底部的按钮隐藏,顶部按钮显示;滑动到中间时2个按钮均显示。
binding.recyclerView.addOnScrollListener(new RecyclerView.OnScrollListener() {
@Override
public void onScrollStateChanged(@NonNull RecyclerView recyclerView, int newState) {
super.onScrollStateChanged(recyclerView, newState);
}
@Override
public void onScrolled(@NonNull RecyclerView recyclerView, int dx, int dy) {
super.onScrolled(recyclerView, dx, dy);
if (!binding.recyclerView.canScrollVertically(1)) {
Log.d(TAG, "onScrolled====: 已经到底部");
} else {
Log.d(TAG, "onScrolled====: 可以向上滑动");
}
if (!binding.recyclerView.canScrollVertically(-1)) {
Log.d(TAG, "onScrolled====: 已经到顶部");
} else {
Log.d(TAG, "onScrolled====: 可以向下滑动");
}
}
});