У меня есть UICollectionView, который заполняется изображениями пользователя прямо из библиотеки фотографий.
Если пользователь щелкает изображение после выбора его из библиотеки, основные изображения переключаются на выбранное изображение.
Каждая ячейка содержит UIImageView.
Я пытался переключать их, используя этот код:
let cell = self.imageUICV.cellForItem(at: IndexPath(item: self.numOfCellSelected, section: 0)) as! AddImageCollectionViewCell
let mainCell = self.imageUICV.cellForItem(at: IndexPath(item: self.numOfCellSelected, section: 0)) as! AddImageCollectionViewCell
guard let mainImage = mainCell.itemImageUIImage.image?.cgImage?.copy() else {
return
}
let newMainImage = UIImage(cgImage: mainImage, scale: mainCell.itemImageUIImage.image!.scale, orientation: mainCell.itemImageUIImage.image!.imageOrientation)
guard let cellImage = cell.itemImageUIImage.image?.cgImage?.copy() else {
return
}
let newCellImage = UIImage(cgImage: cellImage, scale: cell.itemImageUIImage.image!.scale, orientation: cell.itemImageUIImage.image!.imageOrientation)
self.imagePlaceholderArray[self.numOfCellSelected] = newMainImage
self.imagePlaceholderArray[0] = newCellImage
self.imageUICV.reloadData()
Однако, только основнойизображение изменилось, в то время как изображения в меньших ячейках остались прежними.