UITabbarController dismiss modal UINavigationController

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

Aufgrund der Corona-Krise: Die Veröffentlichung von Stellenangeboten und -gesuchen ist bis 31.12.2020 kostenfrei. Das beinhaltet auch Angebote und Gesuche von und für Freischaffende und Selbstständige.

  • UITabbarController dismiss modal UINavigationController

    Hallo liebe Leute!

    Ich hab grad ein interessantes Problem.
    Meine iPhone app hat im AppDelegate als rootViewController einen UITabbarController.

    Falls die App das erste mal geöffnet wird, muss sie grundlegend eingerichtet werden.
    Dazu erstelle ich einen UINavigationController und lasse den tabbarController den navigationController als modalViewController anzeigen:

    Quellcode

    1. firstRun = [[firstRunViewController alloc] init];
    2. navCtrl = [[UINavigationController alloc] initWithRootViewController:firstRun];
    3. [[self tabBarController] presentModalViewController:navCtrl animated:NO];

    Wenn nun die komplette Einrichtung abgeschlossen ist, möchte ich diesen modalViewController ganz gerne wieder weg bekommen.
    In allen anderen Projekten ging das immer schön einfach mit -dismissModalViewControllerAnimated:.

    Nur in dieser Konstellation funktioniert das nicht.
    Ganz egal, wen ich anspreche.
    Ich habe versucht, über den tabbarController, den rootViewController, den aktuellen viewController, natürlich self und noch über einige andere zu dismissen.
    Dabei bekomme ich IMMER folgenden Fehler:
    'UIViewControllerHierarchyInconsistency', reason: 'presentedViewController for controller is itself on dismiss for: <UINavigationController:



    Kann mir vllt. jemand von euch ein paar Takte dazu sagen?