swift - 带有 CollectionView 的 Firebase 分页始终加载相同的图像
问题描述
我正在尝试在我的 CollectionView 中实现分页。
现在,当我调用我的函数loadMorePosts时,我总是得到相同的图片
我确定这是因为我不还原数据的快照,所以图像将始终位于顶部。
如何反转我的快照以获取正确的数据?
这是我添加新数据的代码:
func loadMorePosts() {
var numOfItems = posts.count
let preNumOfItems = numOfItems
numOfItems += 1
let REF_POST = Database.database().reference().child("posts")
let REF_QUERY = REF_POST.queryOrdered(byChild: "postDate").queryLimited(toLast: UInt(numOfItems))
REF_QUERY.observe(.value) { (snapshot) in
var newPost = [PostModel]()
var count = 0
for post in snapshot.children {
let data = post as! DataSnapshot
print("num of items " + String(numOfItems))
print("counter " + String(count))
let lostPost = PostModel(dictionary: data.value as! [String : Any], key: snapshot.key)
if count >= Int(preNumOfItems) {
newPost.insert(lostPost, at: 0)
}
count+=1
}
self.posts += newPost
self.exploreCollectionView.reloadData()
}
}
解决方案
推荐阅读
- python - 如何在熊猫数据透视表中为日期保留列顺序
- sql-server - 使用存储过程发送电子邮件
- html - 未找到按钮变体混合引导程序
- python - 没有导入导致的循环依赖?
- python - django .validate() 应该返回经过验证的数据
- android - “androidx”片段 [状态]PagerAdapter 在棒棒糖 5.0.1 上失败
- laravel - 如何快速加载嵌套关系并在嵌套的 foreach 循环中遍历集合?
- macos - 如何在没有为活动/非活动窗口自定义主题的情况下使 TMUX 中的所有前景色变暗?
- android - 阅读短信中的特定单词后打开活动
- java - java.sql.SQLException:无法使用 jdbc.queryForObject 在位置 1(值为 1)设置参数