RecyclerView滚动到顶部按钮

时间:2016-08-31 09:57:12

标签: android android-recyclerview

我想在我的应用中添加回顶部按钮。我使用recyclerview来显示项目。我添加了按钮,当我点击它时,视图将显示在顶部,但我的目标是仅在应用程序向下滚动或向上滚动时显示此按钮,并且我的第一个项目不可见(我希望这清楚解释)。我试过

LayoutManager.findFirstCompletelyVisibleItemPosition();

和LayoutManager的其他方法,但没有可接受的效果。

1 个答案:

答案 0 :(得分:4)

我的解决方案如下所示。我在RecyclerView上添加了OnScrollListener,当滚动视图时,我会检查第一个项目是否可见,并设置了我的按钮的可见性。

MyRecyclerView.addOnScrollListener(new RecyclerView.OnScrollListener() {
    @Override
    public void onScrollStateChanged(RecyclerView recyclerView, int newState) {
        super.onScrollStateChanged(recyclerView, newState);
    }

    @Override
    public void onScrolled(RecyclerView recyclerView, int dx, int dy) {
        int visibility = (MyLayoutManager.findFirstCompletelyVisibleItemPosition() != 0) ? View.VISIBLE : View.GONE;
        btn.setVisibility(visibility);
    }
});