Как принудительно разорвать строки ячейки UILabel в UICollectionView (композиционный макет)IOS

Программируем под IOS
Ответить
Anonymous
 Как принудительно разорвать строки ячейки UILabel в UICollectionView (композиционный макет)

Сообщение Anonymous »

У меня есть UICollectionView, который действует как список тегов.
Он использует горизонтальную композиционную компоновку.
Вот скриншот: img alt="список тегов" src="https://i.sstatic.net/ykAibcd0.png" />
Моя проблема в том, что если у меня есть тег длиннее, чем ширины коллекции, происходит сбой со следующей ошибкой:

Ошибка: NSCollectionLayoutItem создан с недопустимой комбинацией указанного интервала и размера. В эту группу не может поместиться ни один элемент.

Я понимаю ошибку, это имеет смысл. Но как мне заставить UILabel (единственный компонент UICollectionViewCell) разрывать строки?
Я установил для numberOfLines значение 0. ViewCell загружается из xib с авторазметкой, что очень просто ( UILabel придерживается суперпредставления).
И, наконец, код для Compositional следующий:

Код: Выделить всё

let layoutSize = NSCollectionLayoutSize(widthDimension: .estimated(50), heightDimension: .estimated(20))
let item = NSCollectionLayoutItem(layoutSize: layoutSize)

let group = .horizontal(layoutSize: .init(widthDimension: .fractionalWidth(1), heightDimension: layoutSize.heightDimension), subitems: [item])
group.interItemSpacing = .fixed(10)

let section = NSCollectionLayoutSection(group: group)
section.contentInsets = .init(top: 4, leading: 16, bottom: 4, trailing: 16)
let layout = UICollectionViewCompositionalLayout(section: section)

let collectionView = UICollectionView(frame: .zero, collectionViewLayout: layout)
Я не могу понять, что мешает UILabel разбиться на несколько строк?


Подробнее здесь: https://stackoverflow.com/questions/786 ... positional
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «IOS»