i have a ViewController that is only in Portrait mode. It presents a SafariViewController. Is it possible to change the orientation of the SafariViewController to Landscape maintaining the Portrait for the ViewController?
This works with Swift 4.2. You have to add this method in your viewController to maintain portrait orientation
override var supportedInterfaceOrientations:UIInterfaceOrientationMask {
return UIInterfaceOrientationMask.portrait
}
and you also must declare
let appDelegate = UIApplication.shared.delegate as! AppDelegate
Also in your AppDelegate you have to add
var myOrientation: UIInterfaceOrientationMask = .portrait
func application(_ application: UIApplication, supportedInterfaceOrientationsFor window: UIWindow?) -> UIInterfaceOrientationMask {
return myOrientation
}
and this when you are creating the SFSafariViewController
let appDelegate = UIApplication.shared.delegate as! AppDelegate
appDelegate.myOrientation = .all