RecyclerView 一次滚动一个元素

RecyclerView Scroll one element at a time

我有一个包含图像的 Recyclerview,每个图像都完全填满了视图。我希望用户能够一次滚动一个元素,因此它不会滚动超过一个元素,并且它会在每个元素的开头停止。

我尝试添加滚动侦听器,但我无法锁定滚动。

你知道如何实现这种行为吗?

不要使用 RecyclerView。使用具有垂直方向的 ViewPager。 http://developer.android.com/reference/android/support/v4/view/ViewPager.html

如您所见here我能找到的最佳解决方案是:

RecyclerView recyclerView = (RecyclerView) view.findViewById(R.id.recycler_view);
LinearLayoutManager layoutManager = new LinearLayoutManager(context, LinearLayoutManager.HORIZONTAL, false);
SnapHelper snapHelper = new PagerSnapHelper();
recyclerView.setLayoutManager(layoutManager);
snapHelper.attachToRecyclerView(mRecyclerView);

设置垂直方向应该有效