scwang90 / SmartRefreshLayout

🔥下拉刷新、上拉加载、二级刷新、淘宝二楼、RefreshLayout、OverScroll,Android智能下拉刷新框架,支持越界回弹、越界拖动,具有极强的扩展性,集成了几十种炫酷的Header和 Footer。
https://segmentfault.com/a/1190000010066071
Apache License 2.0
24.95k stars 4.95k forks source link

上拉加载更多时多次拖动列表,加载完成后手指下滑时列表反向滚动 #1566

Open wwwangweiwei123 opened 6 months ago

wwwangweiwei123 commented 6 months ago

使用版本:2.0.5 现象: SmartRefreshLayout嵌套Recyclerview,加载更多时,手指在列表边缘不停上拉,loadMore成功后调用finishLoadMoreWithNoMoreData,同时setEnableLoadMore(false),此时用手指下滑拖动列表,列表反向滚动 原因: 跟踪代码发现,RecyclerView中有一个成员变量mScrollOffset记录了其在屏幕中的位置,手指在列表边缘不停上拉时mScrollOffset[1]为负值,RecyclerView在onTouchEvent时计算出的dy=y2-y2-mScrollOffset[1],因此手指滑动距离小于mScrollOffset[1]的绝对值时列表会反向滚动

暂时没找到解决办法

lrannn commented 5 months ago

+1,我也出现这个问题了,请问最后解决了吗

qulj commented 5 months ago

我也遇到了,是在2.1.0中。请问解决了吗?

wwwangweiwei123 commented 5 months ago

已解决,不要使用setEnableLoadMore(false)函数去达到禁止下拉加载更多的目的,改用finishLoadMoreWithNoMoreData