我尝试为回收站 View 添加滚动监听器并制定了一些逻辑,但我无法一次滑动一项。我在互联网上进行了一些搜索,但我得到了一些具有自定义回收器 View 的第三方库。我们可以在回收站 View 中一次实现一项滑动吗?如果是请告诉如何? 像这样一次滑动一项 image .
最佳答案
这软化了项目之间的移动:
public class SnapHelperOneByOne extends LinearSnapHelper {
@Override
public int findTargetSnapPosition(RecyclerView.LayoutManager layoutManager, int velocityX, int velocityY) {
if (!(layoutManager instanceof RecyclerView.SmoothScroller.ScrollVectorProvider)) {
return RecyclerView.NO_POSITION;
}
final View currentView = findSnapView(layoutManager);
if (currentView == null) {
return RecyclerView.NO_POSITION;
}
LinearLayoutManager myLayoutManager = (LinearLayoutManager) layoutManager;
int position1 = myLayoutManager.findFirstVisibleItemPosition();
int position2 = myLayoutManager.findLastVisibleItemPosition();
int currentPosition = layoutManager.getPosition(currentView);
if (velocityX > 400) {
currentPosition = position2;
} else if (velocityX < 400) {
currentPosition = position1;
}
if (currentPosition == RecyclerView.NO_POSITION) {
return RecyclerView.NO_POSITION;
}
return currentPosition;
}
}
例子:
LinearSnapHelper linearSnapHelper = new SnapHelperOneByOne();
linearSnapHelper.attachToRecyclerView(recyclerView);
关于android - 一次刷一个项目 Recyclerview,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32324926/