Есть некая модель данных и collectionView, нужно отобразить данные как на картинке, чтобы первая ячейка не имела отступы, а следующие имели отступ слева и справа по 20, пробовал через header, первый элемент в header показываю, тогда у меня дублируется элементы, а удалять или не отображать первый элемент не получается так сделать, можно ли как то установить для cell, разные отступы? Я использую insetForSectionAt, но не знаю как его установить конкретно для первой ячейки, чтобы она занимала весь width screen, что можно с этим поделать
Убрать отступ для первой ячейки в CollectionView
RexHunt
#2
func collectionView(_:insetForSectionAt) -> ... {
if indexPath.row == 0 {
// возвращайте 0 отступы
} else {
// возвращайте обычные отступы
}
}
Bird
#3
но в методе нету indexPath
я так же пробовал сделать вот так, но в этом случае применяется для всех ячеек последнее значение, то есть отступы по 20 для всех
RexHunt
#4
Пардон, перепутал метод.
Вам нужно делать в методе с размерами для ячеек.
А в методе insetForSectionAt ставить 0.
Bird
#5
Я сделал вот так в таком методе, это все еще не работает( применяется последнее обращение к contentInset
RexHunt
#6
Все верно, т.к. вы ставите отступы к одной collectionView 2 раза и применяются последние.
Я же вам сказал contentInset оставить 0.
Вам нужно работать только с размерами ячеек.
Bird
#7
извините, я наверное недопонял или недоскринил, такой вариант как у меня на скриншоте сейчас не работает, sizeForItemAt - это же размеры ячеек? В insetForSectionAt оставил 0