liangjingkanji / BRV

[使用文档] Android 快速构建 RecyclerView, 比 BRVAH 更简单强大
http://liangjingkanji.github.io/BRV/
MIT License
2.51k stars 317 forks source link

有个问题我没搞明白 #342

Closed doiten closed 1 year ago

doiten commented 1 year ago

在下拉刷新/上拉加载过程中,关于index。 比如我上拉加载更多成功后,index已经变化(比如index为5)。这时候执行下拉刷新,index变为1,但是下拉刷新失败了,继续去执行上拉加载,那这时候的index是不是错误了?

liangjingkanji commented 1 year ago

点开addData()方法看下如何实现的index自增, 仅仅是封装了几个判断而已

  1. 下拉刷新失败并不会导致index重置
  2. 任何失败行为都不会修改index
doiten commented 1 year ago

我看到onRefresh()方法内index = startIndex,这时候index是否已经是1了?然后下拉刷新失败,index还是为1,再执行加载更多,这时候index是1,加载更多变成了刷新。

liangjingkanji commented 1 year ago

下拉刷新成功以后index就会为2, 如果从未成功当然一直是1(不排除初次使用的加载缺省页而不是下拉刷新)

liangjingkanji commented 1 year ago

你到底是出现了bug还是自己认为存在逻辑问题?

doiten commented 1 year ago

我觉得逻辑好像有问题,就比如说,我上拉加载已经 index = 5 了,这时候执行下拉刷新把 index 改为了 1 ,而正好下拉刷新失败,index并没有变为原先的 5,导致我这时候执行上拉加载用的 index1,上拉加载拿到的数据覆盖了原先已有的多次加载的数据。

liangjingkanji commented 1 year ago

下拉刷新失败, index依然为5, 并不会改为1, 我认为我在这里一直和你解释和猜测太浪费时间, 请fork仓库复现问题再讨论此问题

liangjingkanji commented 1 year ago

我自己的工作已经很累了, 还得保持维护很多仓库, 所以对于不清不楚的问题我会优先关闭(如果你希望仓库一直保持维护和需求迭代的话), 请谅解, 也欢迎进行修复和讨论

这种问题我建议可以加群去详聊, 本项目作者不是一个人

再次强调, 任何下拉或者上拉加载失败的情况下都不会修改index值