相关疑难解决方法(0)

如何使用RecyclerView实现无限列表?

我想换ListView到RecyclerView.我想使用onScroll的的OnScrollListener在RecyclerView确定用户滚动到列表的末尾.

如何知道用户是否滚动到列表末尾以便我可以从REST服务获取新数据?

android listview onscrolllistener material-design android-recyclerview

323
推荐指数
12
解决办法
21万
查看次数

Android:如何获取RecyclerView的当前X偏移量?

我正在使用一个Scrollview无限的"Time Picker Carousel"并发现它不是最好的方法(最后一个问题)

现在,我找到了Recycler View,但是我无法在recyclerView的X方向上获得当前的滚动偏移量?(假设每个项目的宽度为100px,第二个项目只有50%可见,因此滚动偏移量为150px)

  • 所有项目具有相同的宽度,但在第一个项目之前,在最后一个项目之后存在一些差距
  • recyclerView.getScrollX()返回0(文档说:初始滚动值)
  • 在LayoutManager有findFirstVisibleItemPosition,但我不能算出X与偏移

UPDATE

我刚刚找到了一种方法来跟踪X-Position,同时使用onScrolled回调更新值,但我更喜欢获取实际值而不是一直跟踪它!

private int overallXScroll = 0;
//...
mRecyclerView.setOnScrollListener(new RecyclerView.OnScrollListener() {
        @Override
        public void onScrolled(RecyclerView recyclerView, int dx, int dy) {
            super.onScrolled(recyclerView, dx, dy);

            overallXScroll = overallXScroll + dx;

            Log.i("check","overallXScroll->" + overallXScroll);

        }
    });
Run Code Online (Sandbox Code Playgroud)

android scroll position android-recyclerview

51
推荐指数
5
解决办法
7万
查看次数