立即抢购Recyclerview

时间:2017-05-12 06:47:38

标签: android android-recyclerview

我的应用使用带有RecyclerViewLinearLayoutManager的{​​{1}}。 在我的应用程序开始时,我希望我的LinearSnapHelper立即滚动到一个没有任何动画的捕捉位置。

我知道RecyclerView,但动画滚动。任何想法如何实现这一目标?谢谢! :)

代码

设置RecyclerView.smoothScrollToPosition()

RecyclerView

mRecyclerRooms = (RecyclerView) mView.findViewById(R.id.recyclerRooms); mRoomsLayoutManager = new LinearLayoutManager(getActivity(), LinearLayoutManager.HORIZONTAL, false); mRecyclerRooms.setLayoutManager(mRoomsLayoutManager); mSnapHelperRooms = new LinearSnapHelper(); mSnapHelperRooms.attachToRecyclerView(mRecyclerRooms); mRecyclerRooms.addOnScrollListener(mRoomScrollListener); 的XML:

RecyclerView

<android.support.v7.widget.RecyclerView android:id="@+id/recyclerRooms" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginBottom="8dp" android:layout_marginTop="8dp" android:clipToPadding="false" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintLeft_toLeftOf="parent" app:layout_constraintRight_toRightOf="parent" app:layout_constraintTop_toTopOf="parent" /> 用于计算通过mRoomScrollListener()捕捉的距离,然后相应地缩放项目。我们的想法是让物品变得更大,并且当它们靠近应该是float distanceFromSnap = abs(mSnapHelperRooms.calculateDistanceToFinalSnap(mRecyclerRooms.getLayoutManager(), view)[0]);的中心的捕捉位置时具有更多的alpha。

2 个答案:

答案 0 :(得分:0)

使用此

recyclerViewList.scrollToPosition(position);

答案 1 :(得分:0)

http://www.devexchanges.info/2016/09/android-tip-recyclerview-snapping-with.html?m=1

这可能会有所帮助。但我担心Linear snap helper足以在中心处捕捉。