Wenn Ihr RootViewController in einer NIB-Datei in das Hauptfenster angeschlossen, der viewDidLoad Methode des RootViewController wird tatsächlich vor das applicationDidFinishLaunching des ApplicationDelegate genannt. (Zumindest das ist meine Erfahrung.)
Dies ist problematisch, wenn Sie Standardeinstellungen einrichten oder andere Arbeiten ausführen möchten, bevor der RootViewController sogar beginnt, seinen Inhalt zu laden.
Die Lösung besteht darin, zu überschreiben - (void) awakenFromNib im ApplicationDelegate. Dies ist der früheste Einstiegspunkt, den ich in NIB-basierten Apps kenne (mit Ausnahme der Methode ApplicationDelegate + init).
Dies ist eine gute Referenz: http://cocoawithlove.com/2008/03/cocoa-application-startup.html
ok ich diese Datei bekam :) aber wo kann ich den obigen Code zu tun, um diese Änderungen an das UIApplication Objekt hinzufügen? – Thanks
applicationDidFinishLaunching - habe gerade meine Antwort bearbeitet, um die Funktionssignatur dorthin zu setzen. Sie müssten für den navigationController eine Steckdose für diese Klasse erstellen und diese dann verkabeln (falls Sie dies noch nicht getan haben). –