Различный интервал между ячейками с UICollectionView и FlowLayout - PullRequest
0 голосов
/ 08 февраля 2019

У меня проблема с динамическим размером ячейки в UICollectionView, или, возможно, проблема с логикой.Я хотел бы рассчитать ширину ячеек в sizeForItemAt indexPath: IndexPath.У меня минимальный интервал 1.Проблема в том, что доска / расстояние между моими тремя ячейками не такое, как вы можете видеть на картинке.Интервал между первой и второй ячейкой выглядит больше, чем интервал между второй и третьей ячейкой.

enter image description here

Мой код:

func collectionView(_ collectionView: UICollectionView, numberOfItemsInSection section: Int) -> Int {
    return 9
}

func collectionView(_ collectionView: UICollectionView, cellForItemAt indexPath: IndexPath) -> UICollectionViewCell {

    let cell = collectionView.dequeueReusableCell(withReuseIdentifier: "cell", for: indexPath) as! CustomCell
    cell.backgroundColor = UIColor.gray
    cell.name.text = "My Textfield"
    return cell
}

func collectionView(_ collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, sizeForItemAt indexPath: IndexPath) -> CGSize {
    let width = mycollectionView.frame.width
    let cellsInLine: CGFloat = 3
    let widthWithoutSpacing = width - (spacing * (cellsInLine - 1))
    let cell = CGSize(width: widthWithoutSpacing / cellsInLine, height: 50)
    return cell
}

func collectionView(_ collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, minimumLineSpacingForSectionAt section: Int) -> CGFloat {
    return spacing
}

func collectionView(_ collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, minimumInteritemSpacingForSectionAt section: Int) -> CGFloat {
    return spacing
}
...