Skip to content

Latest commit

 

History

History
46 lines (32 loc) · 1.63 KB

UIViewController.md

File metadata and controls

46 lines (32 loc) · 1.63 KB

Instantiate View Controller Usage

Scans through storyboards.

Xcode Editor Autocomplete

Autocomplete Instantiate From Storyboard

Storyboard Identifier

Open Account View Controller

Backboard Generated Code

AccountStoryboard.blackboard.swift

final class func instantiateFromStoryboard(_ initialize: ((_ openAccountViewController: OpenAccountViewController) -> Void)? = nil) -> OpenAccountViewController

The Blackboard Way

ExampleApp

@IBAction func presentOpenAccount() {
    let openAccountViewController = OpenAccountViewController.instantiateFromStoryboard()
    openAccountViewController.path = "Instantiate View Controller"
    
    let navigationController = UINavigationController(rootViewController: openAccountViewController)
    present(navigationController, animated: true)
}

The Standard UIKit Way

StandardApp

@IBAction func alternativePresentOpenAccount() {
    let storyboard = UIStoryboard(name: "Account", bundle: nil)
    let openAccountViewController = storyboard.instantiateViewController(withIdentifier: "OpenAccountViewController") as! OpenAccountViewController
    openAccountViewController.path = "Instantiate View Controller"
    
    let navigationController = UINavigationController(rootViewController: openAccountViewController)
    present(navigationController, animated: true)
}