RecyclerView scrolled UP/DOWN listener

前端 未结 5 503
无人共我
无人共我 2020-11-29 01:32

How do we know if user scrolled down or up in RecyclerView ?

I tried with RecyclerView#OnScrollListener , it gives the amount of vertical s

5条回答
  •  抹茶落季
    2020-11-29 01:58

    Try this way:

    private static int firstVisibleInListview;
    
    firstVisibleInListview = yourLayoutManager.findFirstVisibleItemPosition();
    

    In your scroll listener:

    public void onScrolled(RecyclerView recyclerView, int dx, int dy) 
    {
        super.onScrolled(recyclerView, dx, dy);
    
        int currentFirstVisible = yourLayoutManager.findFirstVisibleItemPosition();
    
        if(currentFirstVisible > firstVisibleInListview)
           Log.i("RecyclerView scrolled: ", "scroll up!");
        else
           Log.i("RecyclerView scrolled: ", "scroll down!");  
    
        firstVisibleInListview = currentFirstVisible;
    
    }
    

提交回复
热议问题