У меня есть UISegmentedControl
с 2 сегментами. Эти сегменты представляют два состояния, в которых может находиться мой UICollectionView
. Каждое состояние имеет различное количество разделов и разные ячейки в этих разделах.
Мой первоначальный подход был примерно таким:
@objc priviate func didChangeStep() { //To Be Called When Segment Changes
collectionView.reloadData()
}
func collectionView(_ collectionView: UICollectionView, numberOfItemsInSection section: Int) -> Int {
switch stepController.selectedSegmentIndex {
case 0:
return 5
case 1:
return 3
case 2:
return 0 //For Later
default:
return 0 //For Later
}
}
I Также следите за « выбранной в данный момент ячейкой » (какая ячейка находится ближе всего к середине), поэтому при ее изменении я могу « выделить"эта ячейка и все еще имеет предыдущую ячейку" unhighlight".
Под влиянием CollectionView под влиянием состояния сегментированного контроллера возникают проблемы с прокруткой к первой ячейке (сначала слева направо) после изменения сегмента, выделением старой и выделением новой ячейки после изменения сегмента и еще несколько вопросов.
Есть ли лучший / стандартный способ иметь collectionView, у которого есть изменение sectionSize на основе внешнего UIElement?