關於Recycleview滑動事件的監聽-包括上下滑
阿新 • • 發佈:2019-02-18
如果 dx>0 則表示 右滑 ,dx<0 表示 左滑
// dy <0 表示 上滑, dy>0 表示下滑
@Override public void onScrollStateChanged(RecyclerView recyclerView, int newState) { super.onScrollStateChanged(recyclerView, newState); //onScrollStateChanged 方法 RecyclerView.LayoutManager layoutManager = recyclerView.getLayoutManager(); //判斷是當前layoutManager是否為LinearLayoutManager //只有LinearLayoutManager才有查詢第一個和最後一個可見view位置的方法 if (layoutManager instanceof LinearLayoutManager) { LinearLayoutManager linearManager = (LinearLayoutManager) layoutManager; //獲取最後一個可見view的位置 int lastItemPosition = linearManager.findLastVisibleItemPosition(); //獲取第一個可見view的位置 int firstItemPosition = linearManager.findFirstVisibleItemPosition();
拿到第一個位置,頂部的判斷就已經很簡單了
底部判斷的話,同理有最後一個位置,加上item總數,進行判斷,這裡不再貼程式碼