Как ограничить количество отображаемых ячеек в uicollectionview - swift

Я новичок в программировании на iOS, и мне немного не хватает технических навыков, поэтому сегодня я столкнулся с одной проблемой: как ограничить количество ячеек для отображения на UICollectionView.

Например, я загружаю данные с сервера, и они содержат 20 ячеек. Итак, когда загрузка завершена, содержимое должно отображаться 10 или меньше, потому что у меня есть другая кнопка для отображения содержимого viewAll в другом collectionView, чтобы он отображал все 20 содержимого.

Как я могу добиться такого результата?

Верните любое количество ячеек, которое вы хотите отобразить, из метода numberOfItemsInSection.

Kamran 10.09.2018 11:04

да. Спасибо, сэр

Visal Sambo 10.09.2018 11:12

Лучше использовать концепцию разбивки на страницы для вызова API, потому что используемая вами логика отлично работает, если количество данных, поступающих с сервера, меньше, но если данных больше, хорошо использовать концепцию разбивки на страницы. (В этом случае 10 записей поступают с сервера, и когда вы прокручиваете вниз до последней записи, вы снова вызываете API, и он снова дает 10 записей, если требуется). поиск, связанный с концепцией разбивки на страницы, поможет вам больше в будущем.

Hardik Thakkar 10.09.2018 14:44

@HardikThakkar спасибо за ваше предложение, и я постараюсь использовать этот компонент.

Visal Sambo 10.09.2018 16:28
0
4
959
2

Ответы 2

Ты можешь попробовать

func collectionView(_ collectionView: UICollectionView, numberOfItemsInSection section: Int) -> Int {
    return min(10, imagesArr.count) // OR imagesArr.count > 10 ? 10 : imagesArr.count
}

как насчет return min(10, imagesArr.count)

Quoc Nguyen 10.09.2018 11:06

Внутри numberOfItemsInSection вы можете проверить данные и вернуть счетчик или желаемое максимальное значение следующим образом:

func collectionView(_ collectionView: UICollectionView, numberOfItemsInSection section: Int) -> Int {
    return data.count > 10 ? 10 : data.count
}

Это тернарный оператор, проверьте это.

Другие вопросы по теме