Я создаю предложение / теги просмотра. Который в основном горизонтальный uicollectionview
. У меня есть пользовательская ячейка, в которой у меня есть только одна метка без автоматического изменения размера или автоматического ограничения. И у меня есть массив var tagsArray = ["Label", "A Long Label", "A very long label"]
, который я использую в методах делегата collectionView:
func collectionView(_ collectionView: UICollectionView, numberOfItemsInSection section: Int) -> Int {
return tagsArray.count
}
func collectionView(_ collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, sizeForItemAt indexPath: IndexPath) -> CGSize {
let size = (tagsArray[indexPath.row] as NSString).size(withAttributes: nil)
return size
}
func collectionView(_ collectionView: UICollectionView, cellForItemAt indexPath: IndexPath) -> UICollectionViewCell {
let cell = collectionView.dequeueReusableCell(withReuseIdentifier: "TagCell", for: indexPath) as! TagCollectionViewCell
cell.tagLabel.text = tagsArray[indexPath.row]
return cell
}
Вторая функция collectionViewLayout
- это то, что я выбрано переполнение стека формы, но когда я его запускаю, это не влияет на UILabel.
Вот вывод: