检测RecyclerView的顶部?

时间:2017-01-11 06:10:39

标签: android android-recyclerview android-appbarlayout onscrolllistener

我有一个RecyclerView,首先它向下滚动,现在当我们向上滚动时,它达到最高点。我想检测一下。有什么办法吗?我有AppBar,其高度大于设备宽度。因此它会导致滚动。我想通过让顶级听众手动扩展AppBar来避免甩掉。

    if (layoutManager.firstCompletelyVisibleItemPosition() == 0) {
    //this is the top of the RecyclerView 
    }

我已经使用过这段代码,但我的问题是在放入此代码后我无法向上滚动RecyclerView。因为我的RecyclerView使用带有3列的GridLayoutManager。

1 个答案:

答案 0 :(得分:7)

如果LinearLayoutManager上设置了RecyclerView,您可以使用它来查找第一个可见项目:

LinearLayoutManager layoutManager = new LinearLayoutManager(this);
recyclerview.setLayoutManager(layoutManager);

if (layoutManager.firstCompletelyVisibleItemPosition() == 0) {
    //this is the top of the RecyclerView
    //Do Something
}