我目前有一个 firebase 数据库,里面有很多帖子。帖子显示在自定义单元格中的 UITableViewController 中。
问题是它会一次加载所有单元格 - 当有更多帖子时,这可能会花费很多时间。
我如何让它一次只加载 10 个帖子,并在滚动到底部时再加载 10 个?
这是我获取帖子的方式:
func startObersvingDB() {
FIRDatabase.database().reference().child("feed-items").observeEventType(.Value, withBlock: { (snapshot: FIRDataSnapshot) in
var newUpdates = [Sweet]()
for update in snapshot.children {
let updateObject = Sweet(snapshot: update as! FIRDataSnapshot)
newUpdates.append(updateObject)
}
self.updates = newUpdates.reverse()
self.tableView.reloadData()
}) { (error: NSError) in
print(error.description)
}
}
最佳答案
考虑这个让分页与 Firebase 一起工作的例子: Swift iOS: Firebase Paging
要在滚动时加载更多内容,请在您的 View Controller (Swift3) 中尝试这样做:
extension MyViewController:UIScrollViewDelegate {
func scrollViewDidScroll(_ scrollView: UIScrollView) {
let offset = scrollView.contentOffset.y
if offset > self.tableView.contentSize.height - 50 { //This value is adjustable
functionToPullMoreDatabaseItems()
}
}
}
关于ios - 一次加载 10 个单元格行 - swift,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40615009/