UIViewController Bildschirmhälfte "Schublade Folie" Animation

8

Ich versuche eine UIViewController zu haben, die mit einer "Slide" -Animation von rechts erscheint. Nicht wie ein Push-Segment, nicht wie die Facebook-App. Ich möchte, dass der neue ViewController auf die aktuelle Seite geschoben wird (nicht weggedrückt wird), sondern nur TEIL des Bildschirms bedeckt, während der andere Teil den ersten ViewController anzeigt.

Was ich versucht habe: Am nächsten komme ich, indem ich ein benutzerdefiniertes Segment mit den folgenden Elementen erstelle:

%Vor%

Dies erreicht die Animation, die ich anstrebe, aber es deckt den gesamten ersten ViewController ab. Wie würde ich es an einem bestimmten Punkt stoppen und nicht das ganze Ding abdecken?

Ich benutze Storyboards, und ich versuche zum ersten Mal irgendeine neue Animation.

    
CaptJak 21.07.2013, 16:52
quelle

3 Antworten

12

Sie können versuchen, dies in Ihrem Quellansicht-Controller zu tun und den Rahmen für Ihr Ziel (die x-Achse) so zu ändern wie:

%Vor%

Und das sollte es tun!

Lass es mich wissen, wenn es nicht ...

UPDATE!:

@CaptJak Hey, tut mir leid, dass es nicht geklappt hat .. Ich habe den folgenden Code geschrieben, und es funktioniert ohne Probleme hier .. Ich habe es mit einem Klick auf die Schaltfläche verknüpft .. probier es aus und lass es mich wissen! (PS: Ich habe auch Animationen hinzugefügt!).

%Vor%     
Albara 21.07.2013, 17:48
quelle
5

Mit Hilfe der Antwort von Albara konnte ich auch einen Übergang mit der gleichen Animation erstellen. Das benutzerdefinierte Segment ist wie folgt:

%Vor%

Nur eine Frage der Umbenennung, wirklich.

    
CaptJak 22.07.2013 16:34
quelle
2

Ich habe gerade NDOverlayViewController erstellt, um so etwas zu tun. Tatsächlich kann es einen Ansichts-Controller über eine andere Kante mit variablen Offset-, Ausdehnungs- und Animationsoptionen überlagern / schieben. Ich habe es als ein Experiment erstellt, aber vielleicht wird es für jemanden hilfreich sein?

    
cidered 26.05.2014 14:40
quelle