[iPhone] Storyboard zu anderem Screen wechseln über Segue der zur Laufzeit unbekannt ist

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

  • [iPhone] Storyboard zu anderem Screen wechseln über Segue der zur Laufzeit unbekannt ist

    Hallo zusammen,

    ich bin neu hier und habe direkt mal eine Frage.

    Und zwar sieht mein Programm aktuell wie folgt aus:
    Storyboard:
    Navigation Controller -> Hauptmenü (verschiedene Buttons) -> (Buttonclick) -> weiterer Viewcontroller.
    So, da ich nun gerne das Fenster selbst übernehmen möchte, habe ich mir eine Klasse erstellt vom Typ UIViewController, genau wie eben der daraufgezogene Viewcontroller.
    Danach habe ich dem Viewcontroller die Custom Class gegeben und es funktioniert auch so weit super. Nur möchte ich, wenn eine bestimmte Aktion passiert, wieder über den Segue auf mein Mainmenu wechseln. Wenn ich versuche mit:
    [self performSegueWithIdentifier:@"mainmenu_segue" sender:self] über meinen zuvor erstellten Segue auf den Mainscreen wechseln möchte, bekomme ich folgenden Fehler:

    2012-02-29 13:22:04.105 [298:707] *** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: 'Receiver (<ScanViewController: 0x29a700>) has no segue with identifier 'mainmenu_segue''

    Wie kann ich meinen Segue trotz Custom Class benutzen? Wie macht man es richtig? Mach das noch nicht all zu lange aber über ein bisschen Hilfe würde ich mich freuen.

    LG

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von kapio ()

  • Du pushst den Viewcontroller auf einen Navigationcontroller. Wenn Du zurück zu dem Vorgänger wechseln willst, nimmst Du keine Storyboard-Segue sondern verwendest die Methode des Navigationcontrollers. An den kommst Du übrigens über die Property navigationController des Viewcontrollers.

    Quellcode

    1. [self.navigationController popViewControllerAnimated:YES];

    Noch einfacher geht es nur noch über den Back-Button.
    „Meine Komplikation hatte eine Komplikation.“
  • macmoonshine schrieb:

    Du pushst den Viewcontroller auf einen Navigationcontroller. Wenn Du zurück zu dem Vorgänger wechseln willst, nimmst Du keine Storyboard-Segue sondern verwendest die Methode des Navigationcontrollers. An den kommst Du übrigens über die Property navigationController des Viewcontrollers.

    Quellcode

    1. [self.navigationController popViewControllerAnimated:YES];

    Noch einfacher geht es nur noch über den Back-Button.

    Ok eigentlich eine ziemlich coole Idee das so zu machen. Nur bekomme ich beim klicken auf den Button hier diesen Fehler:
    2012-02-29 14:57:02.454 [1085:707] *** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: 'Pushing a navigation controller is not supported'
  • Okay habe meinen Fehler gesehen.. Nun sieht mein Storyboard so aus:

    MainMenu (UIViewController) -> (Buttonclick) -> Navigation Controller -> RELATION -> UIViewController mit Custom Class.

    Nun ist es so, das wenn ich auf den Button im Mainmenü klicke, nichts mehr passiert. Habe einfach von meinem Button mit CTRL + Maustaste vom Button auf den NavigationController gezogen. Oder wie geht das richtig? Sorry wenn ich "blöde" Fragen stelle, aber iOS ist nicht meine eigentliche Welt.

    Gruß

    Edit: Okay das geht nicht, da mein MainMenu (UIViewController) kein Navigation Controller ist, kann ich auch nicht "navigieren" oder wie verstehe ich das? Deswegen hatte ich 2.. sah dann so aus:

    Quellcode

    1. Navigation Controller -> MainMenu (UIViewController) -> (Buttonclick) -> Navigation Controller -> RELATION -> UIViewController mit Custom Class.

    Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von kapio ()