Ich präsentiere eine UIImagePickerController
, um ein Foto zu machen, ist das Problem, wenn ich ein Foto mache, oder die UIImagePickerController
Abbrechen Ich werde auf einem weißen Bildschirm und nicht auf meine vorherige ViewController
zurückkehren. Nur meine navigation bar
immer noch hier. Wenn ich auf ein anderes view
(mit der Navigationsleiste) klicke, ist es in Ordnung, und wenn ich auf die Registerkarte, wo UIImagePickerController
heißt es immer noch weiß.weißer Bildschirm nach der Gegenwart ein UIImagePickerController
let picker = UIImagePickerController();
picker.delegate = self;
picker.mediaTypes = [swiftString];
picker.allowsEditing = true
picker.sourceType = UIImagePickerControllerSourceType.camera;
picker.cameraCaptureMode = .photo
self.present(picker, animated:true, completion:nil);
entlassen:
picker.dismiss(animated: true, completion:nil);
func imagePickerControllerDidCancel(_ picker: UIImagePickerController) {
picker.dismiss(animated: true, completion:nil);
}
Wenn jemand eine Idee Dankten haben!
aktualisieren:
Weiß-Bildschirm erscheint immer, wenn ich eine Ansicht mit present method
nennen. Also ich denke, es ist Konflikt mit der Navigationscontroller (Hierarchie ...)
Das ist mein Problem lösen:
guard let appDelegate = UIApplication.shared.delegate as? AppDelegate else {return}
appDelegate.navigationController.present(picker, animated: true, completion: nil)
Wenn jemand eine andere Alternative hat, es zu lösen!
Wie Sie 'UIImagePickerController' werden entlassen? – Poles
@Poles Natürlich ist Post bearbeitet, um es zu zeigen – Makaille
Sind Sie sicher, dass Sie Ihre Klasse eine Unterklasse von UINavigationControllerDelegate gemacht, die von der Bildauswahl erforderlich ist? – pbush25