неверная ширина ячейки представления коллекции - PullRequest
0 голосов
/ 24 сентября 2018

после обновления до ios 12 и xcode 10, collectionView с ячейкой размера ячейки больше не работает правильно.

у меня есть этот макет в xcode

enter image description here

вид такой:

enter image description here

и вот как это выглядит сейчас.

enter image description here

Я попытался установить представление коллекционного представления с ограничением widht и изменил в

 func collectionView(_ collectionView: UICollectionView, cellForItemAt indexPath: IndexPath) -> UICollectionViewCell {
cell.widthConstraint.constant = UIScreen.main.bounds.width / 3

, но ничего не происходит.

1 Ответ

0 голосов
/ 24 сентября 2018

Вы использовали неправильный метод для установки размера ячеек.Вместо collectionView(_:cellForItemAt:) используйте collectionView:layout:sizeForItemAtIndexPath:

func collectionView(_ collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, sizeForItemAt indexPath: IndexPath) -> CGSize {
    let itemHeight = 60
    let itemWidth = UIScreen.main.bounds.width / 3
    return CGSize(width: itemWidth, height: itemHeight)
}

Кроме того, вы можете настроить размер элементов, используя Interface Builder s Size Inspector, но в этом случае размер ваших ячеек будет абсолютным.Если вы хотите, чтобы он был 1/3 ширины экрана, вам нужно использовать делегат макета.

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