viewDidLoad wird aufgerufen bevor application:didFinishLaunchingWithOptions: fertig ist

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

  • viewDidLoad wird aufgerufen bevor application:didFinishLaunchingWithOptions: fertig ist

    Hi,

    ich habe mein aktuelles Projekt jetzt mal mit Xcode 5.1 auf iOS 7.1 gestartet und mich gewundert, warum in der viewDidLoad Methode der navigationController des ViewControllers nil ist. Also bin ich den Code nochmals durchgegangen:

    - Instanz meines ViewControllers wird erstellt
    - Neue Instanz eines UINavigationControllers wird erstellt und mein ViewController in initWithRootViewController: übergeben
    - Das Window der App bekommt den NavigationController als rootViewController
    - Das Window wird angezeigt

    Alles so wie vorher, wo der navigationController des ViewControllers eindeutig nicht nil war. Nun habe ich einen NSLog gesetzt nachdem der NavigationController instanziiert wurde und einen in der viewDidLoad Methode des ViewControllers. Siehe da: viewDidLoad wird vor der Instanziierung des NavigationControllers aufgerufen. Demnach kann der navigationController in der viewDidLoad ja auch nur nil sein.

    Bin ich jetzt bescheuert oder war das vorher anders?

    VG,
    Florian
  • Selbst wenn, dann hast Du dich auf etwas verlasen das nicht definiert ist. Warum soll denn der view nicht geladen werden bevor der navigationController erzeugt wird? Das ist doch Sache des Betriebssystems die Reihenfolge festzulegen.

    Gruß

    Claus
    2 Stunden Try & Error erspart 10 Minuten Handbuchlesen.

    Pre-Kaffee-Posts sind mit Vorsicht zu geniessen :)