gpt4 book ai didi

android - 如何在点击时滚动水平回收 View ?

转载 作者:行者123 更新时间:2023-11-29 23:43:18 25 4
gpt4 key购买 nike

实际上我想在水平 recyclerview 中添加这样的功能,如果它是最后一个位置,它会自动滚动到下一个位置,有时它必须前进,有时它必须向后退就像 instagram 的过滤器 View ,它通过点击自动滚动。我想知道如何执行此任务。目前按照我的逻辑,它只是向前滚动,但我不知道如何插入向后滚动的逻辑。

代码:

horzRview.addOnItemTouchListener(new RecyclerItemClickListener(ctx, horzRview, new RecyclerItemClickListener.OnItemClickListener() {
@Override
public void onItemClick(View view, int position) {

if(position<adapter.getItemCount()-1)
horzRview.getLayoutManager().smoothScrollToPosition(horzRview, null, position+1);

else horzRview.getLayoutManager().smoothScrollToPosition(horzRview, null, position-1);

}

@Override
public void onLongItemClick(View view, int position) {
}
}));

最佳答案

使用首选项创建 SmoothScroller STAP_TO_START:

RecyclerView.SmoothScroller smoothScroller = new 
LinearSmoothScroller(context) {
@Override protected int getVerticalSnapPreference() {
return LinearSmoothScroller.SNAP_TO_START;
}
};

现在你设置滚动的位置(项目的位置):

smoothScroller.setTargetPosition(position);

将 SmoothScroller 传递给 LayoutManager:

layoutManager.startSmoothScroll(smoothScroller);

关于android - 如何在点击时滚动水平回收 View ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51665606/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com