iOS Seitenwechsel verhindern

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

  • iOS Seitenwechsel verhindern

    Guten Abend,
    ich habe ein kleines Problem.

    Ich benutze in einer iOS App einen NavigationController.
    Wenn dort der "Zurück"-Button gedrückt wird, wird die Methode viewWillDisappear aufgerufen.
    Nun habe ich in dieser Methode eine Bedingung.

    Wenn diese Zutrifft, soll man auf die Seite davor kommen, ansonsten soll ein Alert ausgegeben werden.
    Das Problem zur Zeit ist, dass er dennoch auf die nächste Seite springt.


    Ich suche also jetzt nach einer Möglichkeit, den Seitenwechsel zu stoppen, wenn die Bedingung nicht zutrifft.


    Könnt ihr mir helfen?
    MacBook Air Late 2008
    OS X Mountain Lion 10.8.4
  • Mit dieser Anweisung kannst du den Back Button ausblenden:

    Quellcode

    1. navigationItem.hidesBackButton = true
    Blende den Button aus, wenn die Bedingung nicht erfüllt wird und wieder ein, wenn sie erfüllt ist.
  • Vyax schrieb:

    Blende den Button aus, wenn die Bedingung nicht erfüllt wird und wieder ein, wenn sie erfüllt ist.
    Die Idee, den Nutzer garnicht erst „das Falsche“ tun zu lassen, ist schon richtig. Allerdings würde ich noch bedenken, dass das Verstecken von so wichtigen UI-Elementen, die zum Verlassen eines Dialogs dienen, aus Nutzersicht problematisch ist. (Hilfe, ich will hier raus!) Ich würde also den Back-Button eher als Abbrechen-Button (der tut nix) verwenden und einen gesonderten Sichern- / Übernehmen-Button vorsehen, der je nach Zustand aktiv oder inaktiv ist.
    „Meine Komplikation hatte eine Komplikation.“
  • macmoonshine schrieb:


    .. Ich würde also den Back-Button eher als Abbrechen-Button (der tut nix) verwenden und einen gesonderten Sichern- / Übernehmen-Button vorsehen, der je nach Zustand aktiv oder inaktiv ist.
    Dann kann/sollte man den Dialog IMHO modal anzeigen. Mit einem OK- (oder Fertig-, Sichern-, ...) und einen Abbrechen-Button in der Navigation-Bar. Denn auch der OK-Button führt wie der Back-Button ja zurück zur letzten Ansicht.
    Das wäre m.E. für den User verständlicher.
  • Knate schrieb:

    Also einen eigenen Button würde ich nur im Notfall verwenden wollen.
    Es gibt also keine Möglichkeit, den Seitenwechsel bei viewWillDisappear zu verhindern?
    Namensregeln:

    senderShouldVerb: Du kannst entscheiden

    senderWillVerb: Du kannst nicht entscheiden

    senderDidVerb: Jetzt ist es eh zu spät
    Es hat noch nie etwas gefunzt. To tear down the Wall would be a Werror!
    25.06.2016: [Swift] gehört zu meinen *Favorite Tags* auf SO. In welcher Bedeutung von "favorite"?