Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

第一页加载项没有占满整个页面时,自动加载第二页 #206

Closed
bobskycn opened this issue Jun 14, 2022 · 8 comments
Closed
Assignees
Labels
寻求帮助 Extra attention is needed 提议 New feature or request 被否决 This will not be worked on

Comments

@bobskycn
Copy link
Contributor

当我使用BRV时,有时会遇到加载第一页内容时,页面还是没有充满,需要继续加载第二页内容以充满页面。

希望能够增加这个功能,或者有这个功能请告知怎么设置。

版本

  • BRV:1.3.77
  • Android:
  • Gradle:
  • Android Studio:
@bobskycn bobskycn added the 寻求帮助 Extra attention is needed label Jun 14, 2022
@bobskycn
Copy link
Contributor Author

经过测试,发现BRV有这个功能。但是有个bug,就在viewpager中有多个fragment,每个fragment都使用BRV。第一个fragment不会触发自动加载第二页,其他的fragment却会触发自动加载。测试了很多次发现可能是因为PageRefreshLayout在加载完第一页后RefreshState没有变成RefreshState.NONE造成的。希望能修复这个bug

@liangjingkanji
Copy link
Owner

你们接口配置一页数据竟然这么少, 本身这就是非常不合理的, 我建议你直接去让接口改下每页数量

@liangjingkanji
Copy link
Owner

经过测试,发现BRV有这个功能。但是有个bug,就在viewpager中有多个fragment,每个fragment都使用BRV。第一个fragment不会触发自动加载第二页,其他的fragment却会触发自动加载。测试了很多次发现可能是因为PageRefreshLayout在加载完第一页后RefreshState没有变成RefreshState.NONE造成的。希望能修复这个bug

这个if是为了避免在刷新过程中去触发加载下一页的请求, 避免并发执行请求列表数据, 我不认为这属于bug, 我认为这属于不支持该功能

@liangjingkanji
Copy link
Owner

你可以尝试实现该功能或者按照你的思路重写onBindViewHolderListener回调(这是公开访问的var属性)

但是我认为你这属于特殊需求, 我建议你直接在刷新(注意判断刷新状态)完成后直接判断是否有更多页, 然后直接再次请求

@bobskycn
Copy link
Contributor Author

谢谢你的解答。通过对比其他类似开源库BaseRecyclerViewAdapterHelper,发现在它的BaseLoadMoreModule类中有个var 变量isEnableLoadMoreIfNotFullPage用于此类需求。如果可以的话,希望能在BRV中加入这个功能。由于接口属于第三方,修改接口比较麻烦,如果由此功能会更好。

@liangjingkanji
Copy link
Owner

liangjingkanji commented Jun 14, 2022

同样支持setEnableLoadMoreWhenContentNotFull这个属性, 但是这个属性和BRVAH一样属于是否启用加载更多并不是预加载下一页

@liangjingkanji liangjingkanji added 提议 New feature or request Welcome PR Further information is requested and removed 寻求帮助 Extra attention is needed Welcome PR Further information is requested labels Jun 14, 2022
@liangjingkanji
Copy link
Owner

liangjingkanji commented Jun 14, 2022

自动在第一页预加载会导致视图显示异常(一页数据会分成两次延迟显示出来), 我不赞同此做法, 我上面已经提供了解决方案, 而且是我认为最合适的解决方案, 就是手动加载两次请求组装成一个更长的单页数据

@liangjingkanji
Copy link
Owner

另外本项目是由社区驱动, 如果你能有更好的实现方式可以发起pr经过审核可以发布, 或者可以直接fork仓库发布属于自己的定制框架

@liangjingkanji liangjingkanji added 被否决 This will not be worked on 寻求帮助 Extra attention is needed labels Jun 14, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
寻求帮助 Extra attention is needed 提议 New feature or request 被否决 This will not be worked on
Projects
None yet
Development

No branches or pull requests

3 participants