iPhone Schieben Sie den Controller in eine linke Richtung

8

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?

    
Aran Mulholland 08.07.2009, 04:13
quelle

6 Antworten

8

Anstatt einen Navigationscontroller zu verwenden, würde ich einfach die Ansicht verschieben.

%Vor%     
Reed Olsen 08.07.2009, 04:22
quelle
9

Ich habe die Animationsrichtung geändert, wenn wir den Viewcontroller drücken. Sie können den Animationstyp hier ändern [animation setSubtype: kCATransitionFromRight];

%Vor%     
milanjansari 15.03.2011 08:14
quelle
4

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.

    
Kevlar 08.07.2009 04:23
quelle
3

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%     
MJB 05.05.2012 21:57
quelle
0

Um den "spitzen" Knopf zu erhalten, müssen Sie eine andere Methode verwenden.

In Ihrem AppDelegate:

%Vor%     
carnz 10.07.2009 10:07
quelle
0

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

    
Bojan Bozovic 21.11.2011 14:02
quelle