Comments (5)
补充,加载更多的回调只调用了一次,第二次就没有走回调方法,然后就是设置数据后,列表跳到了顶部,代码如下
private fun initRvList(data: QwNewsListEntity) {
rv_dynamic.layoutManager = LinearLayoutManager(context)
if (adapter == null) {
adapter = DynamicListAdapter(context!!, data.content!!)
adapter?.setLoadingView(R.layout.view_load_more)
adapter?.setLoadEndView(R.layout.view_load_more_finish)
adapter?.setOnLoadMoreListener {
if (adapter!!.dataCount < data.total) {
page++
getQwNews()
} else {
adapter?.loadEnd()
}
}
rv_dynamic.adapter = adapter
} else {
if (page == 1) {
adapter?.reset()
adapter?.setNewData(data.content)
} else
adapter?.setLoadMoreData(data.content)
}
}
from recyclerviewadapter.
你这写法有点乱呀
from recyclerviewadapter.
private fun initRvList(data: QwNewsListEntity) {
rv_dynamic.layoutManager = LinearLayoutManager(context)
if (adapter == null) {
// adapter 初始化
adapter = DynamicListAdapter(context!!, data.content!!)
adapter?.setLoadingView(R.layout.view_load_more)
adapter?.setLoadEndView(R.layout.view_load_more_finish)
adapter?.setOnLoadMoreListener {
if (adapter!!.dataCount < data.total) {
page++
getQwNews() // 请求更多数据
} else {
// 已加载完成
adapter?.loadEnd()
}
}
rv_dynamic.adapter = adapter // 设置adapter
} else { // 已初始化过adapter
if (page == 1) { // 如果是第一页,重置adapter,设置新数据
adapter?.reset()
adapter?.setNewData(data.content)
} else // 加载更多数据添加
adapter?.setLoadMoreData(data.content)
}
}
from recyclerviewadapter.
1、OnLoadMoreListener回调方法里边只是用来发起加载更多的请求的
2、在你的数据接口的回调里完成setNewData()、setLoadMoreData()、loadEnd()等
可以参考下demo的写法
from recyclerviewadapter.
解决了,是我自己的问题,感谢开源。
from recyclerviewadapter.
Related Issues (17)
- 上拉加载有问题, HOT 3
- 如果一条数据都没有加载出来
- 如果一条数据都没有加载出来
- 添加下拉刷新的问题 HOT 3
- 关于不满一屏无法刷新问题的解决办法 HOT 3
- 一点建议 HOT 1
- 加上下拉刷新,频繁更新数据集会崩溃 HOT 2
- NestedScrollView嵌套RecyclerView时OnLoadMoreListener不起作用 HOT 2
- 如果不给 item监听事件,会报null, HOT 1
- 从Empty View跳转到loadFail View HOT 4
- something wrong HOT 1
- 有个错误,请大神帮忙看一下~ HOT 1
- 您好,大神,加载监听没回调 有空帮忙看看谢谢 HOT 1
- 有个问题 HOT 7
- 封装的 adapter 里边 ImageView 用 Glide怎么搞 HOT 1
- 和v7包冲突
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from recyclerviewadapter.