Разбиение на страницы Firestor CollectionПросмотр Swift программно

Что касается разбивки на страницы в Firestore, я следил за руководством на их веб-сайте и на Youtube, но я не понимаю одного:

С практической точки зрения, если у нас есть collectionView, отображающий ячейки из первого запроса из 10 документов. Мы прокручиваем вниз collectionView, когда все данные первого запроса были видны, где мы вызываем следующий запрос из контроллера?

Я искал в Интернете, но мало что нашел, я думал, может быть, с некоторыми методами делегирования UIScrollViewDelegate из CollectionView (?), но, похоже, он не предлагает правильных методов для этого.

Также для лучшего взаимодействия с пользователем я подумал, что лучше вызывать следующий запрос, когда пользователь приближается к нижней части коллекции, а не когда он уже достиг ее.


125
1

Ответ:

Решено
 func collectionView(_ collectionView: UICollectionView, willDisplay cell: UICollectionViewCell, forItemAt indexPath: IndexPath) {
    if newInstrumentList.count-1 == indexPath.row && isMoreDataAvailable{
        self.presenter?.showMorePage()
    }
}

Это то, что используется для разбивки на страницы, обычно во время вызова API я получаю общее количество элементов и в зависимости от этого устанавливаю логическое свойство. Всякий раз, когда индекс ячейки представления коллекции совпадает с indexPath.row, запрашиваются следующие данные.