Похоже, вы создаете 100 статических ячеек и пытаетесь заполнить их cellNames
. Правильный подход заключается в том, чтобы соответствовать UICollectionViewDataSource
и устанавливать количество элементов на cellNames
и использовать indexPath, предоставленный в cellForItemAt
, для доступа к каждому элементу вашего массива.
class ViewController: UIViewController {
let cellNames = ["1", "2", "3"] // ....
override func viewDidLoad() {
super.viewDidLoad()
}
}
extension ViewController: UICollectionViewDataSource {
func collectionView(_ collectionView: UICollectionView, numberOfItemsInSection section: Int) -> Int {
return cellNames.count
}
func collectionView(_ collectionView: UICollectionView, cellForItemAt indexPath: IndexPath) -> UICollectionViewCell {
let cell = collectionView.dequeueReusableCell(withReuseIdentifier: "customCellId", for: indexPath) as! CustomCell
let cellName = cellNames[indexPath.item]
cell.nameTextField.text = cellName
return cell
}
}