Search code examples
iosxcode11swift5

Xcode 11: cannot instantiate view controller from storyboard with identifier


I'm using Xcode 11.1 and my deployment target is iOS 10.0

I can't instantiate a view controller like before. Here is the code in

func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey : Any]?) -> Bool

let storyboard = UIStoryboard(name: "Main", bundle: nil)
let viewController = storyboard.instantiateViewController(identifier: "TabBarController")

I get the error saying:

'instantiateViewController(identifier:creator:)' is only available in iOS 13.0 or newer

How possibly can one instantiate view controllers from storyboard programmatically on Xcode 11.1. Any other way?


Solution

  • You need to use

    storyboard.instantiateViewController(withIdentifier: "TabBarController")
    

    the new instantiateViewController(identifier: "TabBarController") is only available on iOS 13 and returns ViewController instead of UIViewController as you can see here

    enter image description here