J'ai une cellule de vue de collection qui contient une image et un bouton en dessous. Maintenant, quand je clique sur ce bouton, je veux charger un tableviewCell
qui a l'image de la collection. Pour ce faire, je l'ai fait d'abord ..Accès à indexPath dans une vue de collection
func SellBtnTapped(_ sender: UIButton) {
let indexPath = collectionView?.indexPath(for: ((sender.superview?.superview) as! RecipeCollectionViewCell))
self.photoThumbnail.image = self.arrayOfURLImages[(indexPath?.row)!]
et photoThumbnail
est défini comme si ... var photoThumbnail: UIImageView!
Mais faire cela donne un accident dire 'Unexpectedly found nil while unwrapping an optional value'
donc j'ai essayé ce ..
let point = sender.convert(CGPoint.zero, to: self.collectionView)
let myIndexPath = self.collectionView.indexPathForItem(at: point)
self.photoThumbnail.image = self.arrayOfURLImages[(myIndexPath?.row)!]
Mais encore une fois , le même accident de Unexpectedly found nil....
se passe. Une idée de ce qui pourrait être le problème ..?
EDIT: Ceci est le code pour cellForItemAtIndex...
func collectionView(_ collectionView: UICollectionView, cellForItemAt indexPath: IndexPath) -> UICollectionViewCell {
let cell = collectionView.dequeueReusableCell(withReuseIdentifier: identifier, for: indexPath as IndexPath) as! RecipeCollectionViewCell
cell.sellButton.tag = indexPath.item
cell.sellButton.addTarget(self,action: #selector(SellBtnTapped(_:)),for: .touchUpInside)
return cell
}
Ajouter votre CollectionView (_ CollectionView:.? UICollectionView code méthode – iPatel
expliquer aussi quelle ligne l'erreur se produit sur –
vous dire la cellForItemAt ... @iPatel – bws