В настоящее время у меня база данных firebase с множеством сообщений в ней. Сообщения отображаются в UITableViewController в пользовательских ячейках.Загрузите 10 рядов ячеек за раз - быстро
Проблема в том, что он загружает все ячейки сразу - это может занять много времени, когда придет больше сообщений.
Как я могу заставить его загружать только 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)
}
}
Это может быть очень глупый вопрос, но какова высота содержимого, связанного с загрузкой дополнительных сообщений? :) –
Когда contentOffset.y равно contentSize.height, то есть при прокрутке вниз. Вычитание 50 позволяет вам вызвать функцию, чтобы загрузить больше из базы данных, прежде чем вы достигнете дна, чтобы данные были там к тому времени, когда вы доберетесь до нее. – rmooney