Распределение свободного пространства между ячейками представления коллекции - PullRequest
0 голосов
/ 05 мая 2019

Я пытаюсь использовать вид коллекции как средство выбора дней недели.

enter image description here

Высота и ширина ячейки постоянны.Я хотел бы расположить ячейки, чтобы заполнить всю ширину представления коллекции.Я пробовал это, но у меня не работает:

    func collectionView(_ collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, minimumInteritemSpacingForSectionAt section: Int) -> CGFloat {
        let collectionWidth = collectionView.frame.width
        let freeSpace = collectionWidth - 210

        return freeSpace / 7
    }

    func collectionView(_ collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, sizeForItemAt indexPath: IndexPath) -> CGSize {
        return CGSize(width: 30, height: 30)
    } 

1 Ответ

0 голосов
/ 05 мая 2019

Вам нужно

func collectionView(_ collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, minimumInteritemSpacingForSectionAt section: Int) -> CGFloat {
    let collectionWidth = (collectionView.frame.width - numberOfItems * 30 ) / (numberOfItems - 1)
     return collectionWidth
}

, где numberOfItems = количество источников данных массива коллекции


Возможно, вам потребуется

return freeSpace / 6

вместо

return freeSpace / 7

, так как вам нужно разделить на numOfelements - 1, что является правильным количеством пробелов между 7 элементами

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...