Ich habe eine App, die eine zentrale Ansicht mit zwei Ansichten auf jeder Seite hat. Ich möchte zwei Navigationsleisten haben, links und rechts, die einen neuen Navigationscontroller auf die Ansicht von links oder rechts schieben.
Wenn Sie Ansichten ändern, indem Sie eine neue Ansicht mit der pushviewController: -Methode von NavigationController aufrufen, wird die Ansicht scheinbar von rechts eingeblendet. Wie ändere ich das, um von links zu schieben?
Anstatt einen Navigationscontroller zu verwenden, würde ich einfach die Ansicht verschieben.
%Vor%Ich habe die Animationsrichtung geändert, wenn wir den Viewcontroller drücken. Sie können den Animationstyp hier ändern [animation setSubtype: kCATransitionFromRight];
%Vor%Ich glaube nicht, dass Sie die Schieberichtung in UINavigationControllern explizit definieren können. Möglicherweise können Sie die aktuelle Ansicht des Navigationsstapels ausblenden, um die vorherige Ansicht anzuzeigen, die auf die von Ihnen gewünschte Weise animiert wird. Dies kann jedoch komplex sein, wenn Sie verschiedene Ansichts-Controller anzeigen möchten, je nachdem, was Sie in der aktuellen Ansicht tun.
Wenn Ihr Workflow nicht zu kompliziert ist, können Sie im aktuellen View-Controller einen Verweis auf den früheren View-Controller halten. Je nachdem, was Sie in der aktuellen Ansicht tun (z. B. eine Tabellenansichtszelle auswählen), können Sie die Daten, die Sie benötigen, im vorherigen Ansichtscontroller ändern und dann
aufrufen %Vor%oder was auch immer die richtige Methode ist (ich denke, das ist ziemlich ähnlich wie es ist). damit könntest du den Nav-Stapel mit der gewünschten Animation nach unten bewegen, was funktioniert, wenn dein Nav-Stapel eine bestimmte Anzahl von Ansichten hat.
zu dem, was Reed Olsen gesagt hat: Sie müssen nur einen Knopf anschließen, der die Folie auf die gleiche Methode hochfährt und einen BOOL hinzufügen, der verfolgt, ob die Ansicht angezeigt wird oder nicht. Alles, was Sie tun müssen, ist den Ursprung richtig einzustellen.
%Vor%Sie können RTLNavigationController: UINavigationController erben und diese Funktionen überschreiben.
%Vor%und
%Vor%Und im Anwendungsdelegierten:
%Vor%Es wird von links nach rechts gedrückt und von rechts nach links gesprungen
Tags und Links iphone view uinavigationcontroller uinavigationbar transition