0

Ich bin also in einem Navigationscontroller und möchte bei einem Tastendruck eine Bildauswahl präsentieren. Das funktioniert gut, aber wenn ich den Picker verwarne, wirft er mich zurück zum Root-View-Controller und nicht dort, wo ich das Bild bearbeiten möchte.Swift ImagePicker in NavigationController

Dies ist mein Code:

@IBAction func attachPhotoButtonPressed(sender: UIButton) { 
     imagePicker.sourceType = .SavedPhotosAlbum 
     presentViewController(imagePicker, animated: true, completion: nil) 
} 

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

    self.dismissViewControllerAnimated(true, completion: nil) 
} 

ich bereits bei diesen Fragen sah, aber nicht einen Fix finden. (Nicht ein Objective-C Typ)

Pushing a navigation controller is not supported- performing segues

presenting ViewController with NavigationViewController swift

Pushing a navigation controller is not supported

Antwort

0

Der Grund, dass Sie in die Wurzel-View-Controller sind Prellen ist, weil diese Linie

self.dismissViewControllerAnimated(true, completion: nil)

ist das Ablehnen der übergeordneten Ansicht (self) und n ot die Picker-Ansicht. So davon aus, dass Sie einen Verweis auf Ihre Kommissionierer haben, dann sollten Sie

picker.dismissViewControllerAnimated(true, completion: nil)

+1

aufrufen, wenn es so einfach war, hatte ich es jetzt herausgefunden, vielen Dank für Ihre Hilfe, ich glaube, es hat etwas zu tun mit wie die Navigation im Allgemeinen strukturiert ist (übernahm von jemand anderem) Ich habe es gelöst mit dem Schreiben meiner eigenen Pflücker auf dem Foto-Framework, die ziemlich gut funktioniert. – TimLR

Verwandte Themen