Bild wird nach Auswahl nicht in ImageView angezeigt und ViewController ist dann leer

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

  • Bild wird nach Auswahl nicht in ImageView angezeigt und ViewController ist dann leer

    Hallo,

    beim Versuch mir über ein ImageView ein Bild in selbiges zu holen, habe ich hier Probleme.

    Das ist mein erster Versuch mit ImageView und Fotos generell.

    Ich habe ein ImageView mit einem TapGestureRecognizer versehen und bekomme nach dem Klick auch meine Fotos angezeigt und kann ein Foto auswählen.
    Nach der Auswahl verschwindet der gesamte Inhalt des ViewControllers und ich kann nur zurück auf den Controller davor.

    Hier mal der Code den ich geschrieben habe...

    Quellcode

    1. @IBOutlet weak var imgProduktbild: UIImageView!
    2. @IBAction func imageClicked(_ sender: Any) {
    3. if UIImagePickerController.isSourceTypeAvailable(.savedPhotosAlbum) == false {
    4. return
    5. }
    6. let imgPicker = UIImagePickerController()
    7. imgPicker.sourceType = .savedPhotosAlbum
    8. imgPicker.delegate = self
    9. self.present(imgPicker, animated: true, completion: nil)
    10. }
    11. func imagePickerController(_ picker: UIImagePickerController, didFinishPickingMediaWithInfo info: [UIImagePickerController.InfoKey : Any]) {
    12. let mediaType = info[UIImagePickerController.InfoKey.mediaType] as! NSString
    13. if mediaType == kUTTypeImage {
    14. imgProduktbild.image = (info[UIImagePickerController.InfoKey.originalImage] as! UIImage)
    15. }
    16. dismiss(animated: true, completion: nil)
    17. }
    Alles anzeigen
    Leider finde ich da den Fehler nicht. Laut Google scheine ich alles richtig zu machen. Ein Fehler wird mir in der Konsole auch nicht ausgegeben.
    Irgendwelche Ideen?
  • Also ich probiere hier schon die ganze Zeit rum und komme etwas voran.

    Nehme ich ein kleines Bild, passt alles.
    Ist das Bild aber ein größeres (z.B. mit dem iPhone aufgenommen), dann hab ich es zumindest so weit dass es angezeigt wird, aber ziemlich weit unten in der App und alles weitere ist weg.
    ImageView sitzt ganz oben in einem StackView.
    Ich habe das Gefühl dass er das ImageView so hoch mach wie das Bild Pixel hat, das Bild aber skaliert, so dass es auf den Bildschirm passt, aber trotzdem die Originalhöhe des Bildes an mein ImageView übergeben und genutzt wird.

    Width/Height ist unter "Size Instepctor -> View" ausgegraut und demnach nicht einstellbar.

    Wie/wo muss ich da den Hebel ansetzen um eine fixe Höhe des ImageView festzulegen?