2009-06-28 3 views
3

Ich möchte den Effekt einer gleitenden Ansicht implementieren, ähnlich wie die Animation einer Ansicht von presentModalViewController, aber die Ansicht wird nur eingeblendet, um die Hälfte des Bildschirms abzudecken.Wie kann ich die Ansicht im iPhone ein- und ausschieben?

ich es auf diese Weise genähert:

1) sollte unmittelbar vor thew Ansicht angezeigt werden und in, addSubview das Kind Blick gleitet. Positioniere es so, dass es am Anfang nicht sichtbar ist.

2) eine Methode auf dem View-Controller des subview Rufen Sie den Core Animation Code ausführen es in bringen

tun die oben nicht zu funktionieren schien (nichts passiert -. Der Blick erscheint nur an seinem Startort). Das Hinzufügen der Ansicht im Voraus in viewDidLoad funktioniert auch nicht. Idealerweise hätte der Code die gleiche Anforderung wie presentModalViewController. Dazu müssen Sie den View-Controller an dem Punkt instanziieren, an dem Sie die Ansicht einfügen und animieren müssen.

Ich würde mich freuen, wenn Sie Zeiger oder Code zum Animieren der Ansicht in/out bereitstellen können.

+0

Überprüfen Sie meine Antwort [http://stackoverflow.com/questions/1026403/animating-the-display-of-a-view/1028897#1028897](http://stackoverflow.com/questions/1026403/animating- the-display-of-a-view/1028897 # 1028897). Es zeigt, wie eine UIView animiert wird. –

Antwort

0

Vielleicht sollten Sie den Code schreiben Sie in Schritt Nummer verwenden 2. Ich habe etwas ähnliches auf einem meiner Anwendungen, bei denen der Benutzer eine Ansicht von einem Rand des Bildschirms auf die andere gleitet, als ob eine Abdeckung über die placeing Bildschirm.

Wenn Sie versuchen, eine automatische Animation (ohne Benutzerinteraktion) zu machen, müssen Sie: einen verschiebbaren Rahmen für die endgültige Position festlegen. Tun Sie dies innerhalb eines Animationsblocks. Spielen Sie mit den Parametern Dauer, Animationskurve usw.

2

Ich würde das Beispielprojekt ViewTransitions auf der Apple Dev-Website überprüfen. Es ist eine großartige Ressource für das Verständnis der einfachen Dinge, die Sie tun müssen, wenn Sie Übergänge einrichten. Wenn Sie nur in der Hälfte schieben möchten, können Sie versuchen, den Rahmen der "Schiebe-Ansicht" auf nur die Hälfte des Bildschirms zu setzen ... schauen Sie sich einfach den Code an und versuchen Sie es.

2

Normalerweise animiere ich modale Bildschirm in der übergeordneten ViewController anstelle von Modal ViewController selbst.

Verwandte Themen