获取RecyclerView滚动的位置正确写法记录
发布于 6 个月前 作者 12345 604 次浏览 来自 Android

找了许多方法跟教程,都无法合适的获取一个稳定持续变化的值,要么归零要么变空,要么在item插入、移动、删除的时候高度无法正确更正

试了下合适的方法可以获取到一个稳定持续变化的值:

   public int getScrollYDistance() {
        LinearLayoutManager layoutManager = (LinearLayoutManager) mRvHomeView.getLayoutManager();
        assert layoutManager != null;
        int position = layoutManager.findFirstVisibleItemPosition();
        View firstVisibleChildView = layoutManager.findViewByPosition(position);
        assert firstVisibleChildView != null;
        int itemHeight = firstVisibleChildView.getHeight();
        return (position) * itemHeight - firstVisibleChildView.getTop();
    }

如何获取Android RecyclerView滑动的距离

回到顶部