Les réponses et suggestions ci-dessus sont justes, ci-dessous est une autre version, et une manière efficace en utilisant programmatiquement.
#1 Création d'une extension UIView
#2 Création d'une méthode ()
//#1
extension UIViewController {
//#2
func presentLocal(_ viewControllerToPresent: UIViewController, animated flag:
Bool, completion: (() -> Void)? = nil) {
//Reusing below 2 lines :-)
viewControllerToPresent.modalPresentationStyle = .overCurrentContext
self.present(viewControllerToPresent, animated: flag, completion: completion)
}
}
En invoquant comme ci-dessous
let vc = MyViewController()
let nc = UINavigationController(rootViewController: vc)
sourceView.presentLocal(nc, animated: true, completion: nil)
OU
let vc = MyViewController()
sourceView.presentLocal(vc, animated: true, completion: nil)