相关疑难解决方法(0)

滚动时获取RecycleView的中心可见项

这就是我要的:

在此输入图像描述

如上图所示,我想绘制一条中心线RecycleView,然后在滚动时(以及向左或向右移动)获取中心项目.
这是我尝试绘制水平线RecycleView:

    HorizontalAdapter adapter = new HorizontalAdapter(data);
    LinearLayoutManager layoutManager
            = new LinearLayoutManager(this, LinearLayoutManager.HORIZONTAL, false);
    recycleView.setLayoutManager(layoutManager);
    recycleView.setAdapter(adapter);
Run Code Online (Sandbox Code Playgroud)

有没有办法知道哪个项目被移动到中心RecycleView?如何RecycleView向左或向右滚动一个位置?

更新:我试图使用滚动侦听器来获得中间位置,但它不能作为方面.

  @Override
        public void onScrolled(RecyclerView recyclerView, int dx, int dy) {
            super.onScrolled(recyclerView, dx, dy);
            int firstPos = layoutManager.findFirstVisibleItemPosition();
            int lastPos = layoutManager.findLastVisibleItemPosition();
            int middle = Math.abs(lastPos - firstPos) / 2 + firstPos;

            int selectedPos = -1;
            for (int i = 0; i < adapter.getItemCount(); i++) {
                if (i == middle) {
                    adapter.getItem(i).setSelected(true);
                    selectedPos …
Run Code Online (Sandbox Code Playgroud)

android scroll android-recyclerview

50
推荐指数
4
解决办法
3万
查看次数

RecyclerView smoothScroll位于中心位置.安卓

我正在使用水平布局管理器RecyclerView.我需要以下RecyclerView一种方式制作:当点击某个项目时 - 将smoothScrool放到该位置并将该项目放在中心RecyclerView(如果可能的话,例如20中的10项).

所以,我没有问题smoothScrollToPosition(),但如何把项目放在RecyclerView??? 的中心?

谢谢!

android android-recyclerview linearlayoutmanager

24
推荐指数
3
解决办法
2万
查看次数