How to load SecondViewController
simultaneously with ViewController
inside viewDidLoad()
method?
Segue's type is Sheet
.
import Cocoa
class ViewController: NSViewController {
override func viewDidLoad() {
super.viewDidLoad()
self.performSegue(withIdentifier: "secondVC", sender: self)
}
func prepareforSegue(segue: NSStoryboardSegue, sender: Any?) {
if let identifier = segue.identifier, identifier == "secondVC" {
_ = segue.destinationController as? SecondViewController
}
}
}
This
self.performSegue(withIdentifier: "secondVC", sender: self)
won't work inside viewDidLoad
consider wraping it inside a Dispatch-after or inside a bool flag in viewDidAppear
DispatchQueue.main.asyncAfter(deadline:.now() + 2 ) {
self.performSegue(withIdentifier: "secondVC", sender: self)
}
OR
var once = true
override func viewDidAppear() {
super.viewDidAppear()
if once {
self.performSegue(withIdentifier: "secondVC", sender: self)
once = false
}
}