在RecyclerView addOnScrollListener
上,属性SCROLL_STATE_IDLE
需要一些时间才能在项目大小结束时调用,并且向上滚动到RecyclerView的顶部。但它在滚动的中间工作正常。
布局的根视图是CoordinatorLayout。
答案 0 :(得分:3)
遇到同样的问题,我发现的唯一解决方法是每当RecyclerView获得 SCROLL_STATE_SETTLING 时发送 stopScroll(),尽管不是理想的解决方案。考虑到滚动方向,检测它是否到达顶部或底部边缘可能会更好,然后调用stopScroll():
@Override
public void onScrollStateChanged(final int state)
{
super.onScrollStateChanged(state);
if (state == RecyclerView.SCROLL_STATE_SETTLING)
{
this.stopScroll();
}
}
<强>更新强>
这个问题似乎是支持库中的一个错误,尽管据报道它已经明确表明该问题仍然存在,所以希望我们能够在未来看到一个适当的解决方案:
答案 1 :(得分:0)
当您的recyclerview已达到最低点时调用stopScroll()。 我认为,既然它支持库版本,速度就会被计算,并且会使延迟变得有点。