Я динамически устанавливаю ширину каждой ячейки UICollectionView
в соответствии с текстом внутри нее.Проблема заключается в том, что большую часть времени размер width
является правильным, но иногда размер ячейки не является правильным.
Это строки, которые я отображаю в ячейке
let tabs = ["1st tab", "Second Tab Second", "Third Tab", "4th Tab", "A"]
func collectionView(_ collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, sizeForItemAt indexPath: IndexPath) -> CGSize {
let text = tabs[indexPath.row]
let font = UIFont.systemFont(ofSize: 21, weight: UIFont.Weight.regular)
let attributes = font != nil ? [NSAttributedString.Key.font: font] : [:]
let width = text.size(withAttributes: attributes).width
return CGSize(width: width + 16+16+16+35, height: self.menuBarColView.frame.height)
}
Это правильно отображается 1-й,второй, третий и 5-й, но размер 4-й ячейки неправильный.Это вывод.
Скажите, пожалуйста, в чем проблема?