如何获得RecyclerView的偏移量?

时间:2017-03-28 01:27:41

标签: java android

我想保存RecyclerView的位置,然后稍后重置。如果顶部项目只有一半可见,我可以用什么来保存这个偏移?

对于我正在使用的职位: findFirstCompletelyVisibleItemPosition()

要重置我正在使用的位置:

        ((LinearLayoutManager) recyclerView.getLayoutManager()).scrollToPositionWithOffset(position, offset);

但我不确定要作为偏移传递什么?

1 个答案:

答案 0 :(得分:12)

您必须使用LinearLayoutManager作为此内容。

LinearLayoutManager manager = (LinearLayoutManager) recyclerView.getLayoutManager();
int position = manager.findFirstVisibleItemPosition();
View firstItemView = manager.findViewByPosition(position);
float Offset = firstItemView.getTop();

获取当前窗口中第一个项目的位置和偏移量。