2017-06-27 1 views
0

Je souhaite afficher les images sélectionnées de la galerie dans un ImageView qui se trouve dans CollectionView. Comment puis-je faire cela?? L'affichage de l'image sélectionnée dans ImageView normal fonctionne correctement.Afficher l'image dans la collectionVoir la galerie

Ci-dessous mon code:

var selectedImage = UIImage() 
@IBAction func selectPics(_ sender: Any) 
{ 
    if self.picsCollectionView.isHidden == true 
    { 
     self.picsCollectionView.isHidden = false 
     self.imageView.isHidden = true 
    } 

    self.picker.allowsEditing = true 
    self.picker.sourceType = .photoLibrary 
    present(self.picker, animated: true, completion: nil) 
} 

func imagePickerController(_ picker: UIImagePickerController, didFinishPickingMediaWithInfo info:[String: Any]) 
{ 
    if let image = info[UIImagePickerControllerEditedImage] as? UIImage 
    { 
     selectedImage = image 
    } 
    else if let image = info[UIImagePickerControllerOriginalImage] as? UIImage 
    { 
     selectedImage = image 
    } 
    else 
    { 
     print("Something went wrong") 
    } 

    self.dismiss(animated: true, completion: nil) 
} 

func collectionView(_ collectionView: UICollectionView, numberOfItemsInSection section: Int) -> Int 
{ 
    return 1 
} 

func collectionView(_ collectionView: UICollectionView, cellForItemAt indexPath: IndexPath) -> UICollectionViewCell 
{ 
    let cell = collectionView.dequeueReusableCell(withReuseIdentifier: "cell", for: indexPath as IndexPath) as! UploadCollectionViewCell 

    cell.cellImgView.image = selectedImage 

    return cell 
} 

Répondre

0

trouvé une réponse. Nécessaire d'ajouter une seule ligne.

est inférieure à la solution:

func imagePickerController(_ picker: UIImagePickerController, didFinishPickingMediaWithInfo info:[String: Any]) 
{ 
    if let image = info[UIImagePickerControllerEditedImage] as? UIImage 
    { 
     selectedImage = image 
     self.picsCollectionView.reloadData() 
    } 

    else if let image = info[UIImagePickerControllerOriginalImage] as? UIImage 
    { 
     selectedImage = image 
     self.picsCollectionView.reloadData() 
    } 

    else 
    { 
     print("Something went wrong") 
    } 

    self.dismiss(animated: true, completion: nil) 
}