2016-07-04 5 views
0

Ich möchte eine gleitende Animation in Swift machen. Ich will, dass es vom ersten Controller zum zweiten geht, indem ich vom ersten View-Controller herunter rutsche. Beispiel: Du bist POV auf dem ersten VC und wenn du einen Knopf drückst, rutscht der erste VC nach unten und oben drauf ist der zweite VC . Ist das ein plausibler Übergang? Und wenn ja, wie würde ich das erreichen? Vielen Dank! HierErstellen Sie gleitende Animation in View Swift

ist ein Beispiel Bild von dem, was ich suche: Example

Hinweis: Ich habe nicht die secondView will über den ersten Blick gleiten, ich will es darüber bleiben (oder oben) von die erste Ansicht, während sie nach unten rutscht.

+1

kann dies helfen Ihnen ... http://stackoverflow.com/questions/32514836/how-to-add-bottom-swipe-up-view-ios/32516167#32516167 –

+0

Vielleicht hilft diese Beiträge: http: //stackoverflow.com/a/26569703/3178126. Hier erfahren Sie, wie Sie benutzerdefinierte Push- und Pop-Übergänge erstellen können. Das Beispiel animiert das Alpha, aber Sie können auch die Transformationseigenschaften der Ansicht animieren. –

Antwort

0

Um diesen Abschnitt zu erstellen, müssen Sie eine UIStoryBoardSegue Datei erstellen. In dieser Datei setzen diesen Code:

override func perform() { 
     var firstVCView = self.sourceViewController.view as UIView! 
     var secondVCView = self.destinationViewController.view as UIView! 

    // Get the screen width and height. 
    let screenWidth = UIScreen.mainScreen().bounds.size.width 
    let screenHeight = UIScreen.mainScreen().bounds.size.height 

    // Specify the initial position of the destination view. 
    secondVCView.frame = CGRectMake(0.0, -screenHeight, screenWidth, screenHeight) 
    firstVCView.frame = CGRectMake(0.0, 0.0, screenWidth, screenHeight) 

    // Access the app's key window and insert the destination view above the current (source) one. 
    let window = UIApplication.sharedApplication().keyWindow 
    window?.insertSubview(secondVCView, aboveSubview: firstVCView) 

    // Animate the transition. 
    UIView.animateWithDuration(0.4, animations: {() -> Void in 

     firstVCView.frame = CGRectOffset(firstVCView.frame, 0.0, screenHeight) 
     secondVCView.frame = CGRectOffset(secondVCView.frame, 0.0, screenHeight) 

    }) { (Finished) -> Void in 
     self.sourceViewController.presentViewController(self.destinationViewController as! UIViewController, 
                 animated: false, 
                 completion: nil) 
    } 
} 

Steuerung klicken, um einen Übergang zu schaffen. Wählen Sie "Benutzerdefiniert". Geben Sie dann im Attribut-Inspektor den Dateinamen der Datei ein. Ihr Custom-Segment ist gut zu gehen!

Hoffe das half.

+0

Vielen Dank SO VIEL! Ich habe versucht, das eine Weile herauszufinden, und das hat 100% funktioniert! – Nickolans

Verwandte Themen