Search code examples
iosviewcontrollermodalviewcontrollerios13

Presenting modal in iOS 13 fullscreen


In iOS 13 there is a new behaviour for modal view controller when being presented.

Now it's not fullscreen by default and when I try to slide down, the app just dismiss the View Controller automatically.

How can I prevent this behaviour and get back to the old fullscreen modal vc?

modal behaviour

Thanks


Solution

  • With iOS 13, as stated in the Platforms State of the Union during the WWDC 2019, Apple introduced a new default card presentation. In order to force the fullscreen you have to specify it explicitly with:

    let vc = UIViewController()
    vc.modalPresentationStyle = .fullScreen //or .overFullScreen for transparency
    self.present(vc, animated: true, completion: nil)