分页列表数据合并中的细节问题

如果一个列表数据是分页加载的, 就需要分页合并,即每次拉取新的一页时,将新到的一页数据合并到之前的列表数据中。
 
这个可以是很简单的,比如数据结构是这样的:
data {
    list: []
}
Merge方法极其简单,直接将新一页数据addAll到本地的列表数据结构中。
 
但如果这个接口除了接口数据还捎带了一点别的东西,比如数据结构是这样的:
data {
    leftAmount: “200”,
    list: []
}
 
这个leftAmount就需要在合并的时候做额外处理了,并且还得分两种情况做不同的处理:
1, leftAmount在当前页面是一个固定的值,第一页拉取后,第二页就不再返回这个数值了,或者说返回了但是还是同一个值(server应该不会这么浪费精力)。这种情况如果本地的列表数据对象不被替换,leftAmount就总是一个正确的值,其实不必做额外处理;
2, leftAmount在每一页返回的时候都变化了,这个时候,除了将新到一页的列表addAll到本地列表数据中,还要将leftAmount从新到一页的数据结构中覆盖到本地列表数据中。 

转载于:https://www.cnblogs.com/mosthink/p/6102700.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值