Ich habe eine ViewController-Instanz in einem Storyboard definiert. Ich kann es durch die folgendeswift - View-Controller vom Storyboard initialisieren durch Überschreiben von init
initialisierenvar myViewController = UIStoryboard(name: "Main", bundle: nil).instantiateViewControllerWithIdentifier("myViewControllerIdentifier") as! ViewController
Gibt es eine Möglichkeit, die init-Methode von Viewcontroller außer Kraft zu setzen, damit ich es initialisieren kann
var myViewController = ViewController()
mit Ich versuchte zwingende init
convenience init() {
self = UIStoryboard(name: "Main", bundle: nil).instantiateViewControllerWithIdentifier("SearchTableViewController") as! SearchTableViewController
}
aber der Compiler mag das nicht. Irgendwelche Ideen?
Ich habe keine Lösung, aber warum sollte man dies tun wollen? – Caleb
Es sieht einfach sauberer aus, denke ich. Plus, wenn die Ansicht in einer Nib entworfen wird, funktioniert es automatisch, so dass ich von Storyboards zu Nibs wechseln kann, ohne den Initialisierungscode zu ändern – adamF
Wie wäre es, wenn Sie für jeden ViewController eine eigene ViewController-Klasse erstellen? Das scheint mir viel sauberer zu sein. – Caleb