gpt4 book ai didi

android - RecyclerView 在 smoothScrollToPosition(0) 之后滚动结束

转载 作者:塔克拉玛干 更新时间:2023-11-02 21:43:00 32 4
gpt4 key购买 nike

我有 RecyclerViewLinearLayoutManager(垂直,不是倒置的)。当我将项目插入或移动到 0 位置时,将调用这样的方法:

private void scrollToStart() {
int firstVisiblePosition = ((LinearLayoutManager) recentList.getLayoutManager()).findFirstCompletelyVisibleItemPosition();
boolean notScrolling = recentList.getScrollState() == RecyclerView.SCROLL_STATE_IDLE;
if (firstVisiblePosition < 2 && notScrolling) {
recentList.scrollToPosition(0);
}
}

但有时它会平滑滚动到列表末尾。

(我在 Instagram 等应用程序中看到过这种行为。看起来列表滚动到顶部然后开始向相反方向移动。)

如果我将 smoothScrollToPosition 替换为简单的 scrollToPosition,它会正常运行。

如何防止这种滚动?

最佳答案

在我的例子中,元素是可回收的是造成这种情况的原因。尝试将 this.setIsRecyclable(false); 放在你的 ViewHolder 中

关于android - RecyclerView 在 smoothScrollToPosition(0) 之后滚动结束,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34043183/

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