2017-06-27 6 views
0

Ich möchte Bilder aus der Galerie in eine ImageView, die in CollectionView ist, anzeigen. Wie mache ich das?? Ausgewähltes Bild in normalem ImageView zu zeigen funktioniert gut.Bild in CollectionView von der Galerie anzeigen

Unten ist mein 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 
} 

Antwort

0

eine Antwort gefunden. Benötigt, um nur eine Zeile hinzuzufügen.

Im Folgenden finden Sie die Lösung:

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) 
}