Проблема с layout после вставки секции в UICollectionView
Проблема происходит при вставке секции. (Если я вставляю просто ячейки, проблем не возникает)
Заголовки у меня имеют константный размер.
func collectionView(_ collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, referenceSizeForHeaderInSection section: Int) -> CGSize{
return CGSize(width: view.bounds.width, height: 50)
}
У ячейки константная ширина. И динамическая высота за счет Estimate Size - Automatic
class NewDialogCell: UICollectionViewCell {
@IBOutlet weak var labelText: UILabel!
@IBOutlet weak var newDialogConstraintWidth: NSLayoutConstraint!
override func awakeFromNib() {
newDialogConstraintWidth.constant = UIScreen.main.bounds.width
}
}
Вот таким методом происходит вставка.
collectionView.performBatchUpdates({
if resultTuple.isSection {
let indexSet = IndexSet(integer: resultTuple.indexPath.section)
collectionView.insertSections(indexSet)
} else {
collectionView.insertItems(at: [resultTuple.indexPath])
}
}) { [weak self] isComplition in
self?.collectionView.scrollToItem(at: resultTuple.indexPath, at: .bottom, animated: true)
}
В тюпле находится булевый параметр, определяющий обновлять секцию или ячейку и indexPath вставляемой ячейки.
Заранее прошу не предлагать решения типо заменить вставку ячеек на collectionView.reloadData()
Очень надеюсь на вашу помощь! Заранее благодарю!
