5

Ich habe eine einfache Animation, die in meiner Scroll-Ansicht Delegate-Methode scrollViewDidEndDragging ausführen.Wie Bounce-Animation zu AnimateWithDuration hinzufügen?

Es sieht wie folgt aus:

- (void)scrollViewDidEndDragging:(UIScrollView *)scrollView willDecelerate:(BOOL)decelerate { 

    NSLog(@"finger was lifted"); 

    [UIView animateWithDuration:1.0 
        animations:^{ 
         self.homeLabel.frame = self.view.frame; 
        }]; 
} 

diese Animation verwenden, nachdem der Finger zu heben die meine homeLabel von oben kommt, und ich will es eine Bounce-Animation auf dem Etikett hinzuzufügen, so dass, wenn es von oben kommt , anstatt sanft zu landen, wird es einen schönen Sprung haben ... wie kann ich das tun? thanksss

+0

https://developer.apple.com/library/ios/documentation/UIKit/Reference/UIView_Class/index.html#//apple_ref/occ/clm/UIView/animateWithDuration:delay:usingSpringWithDamping:initialSpringVelocity:options:animations : Fertigstellung: – Desdenova

Antwort

0

Eine gute Lösung besteht darin, eine benutzerdefinierte Ebene für Ihre Ansicht zu erstellen, die die Methode addAnimation:forKey: überschreibt, um eine benutzerdefinierte Zeitfunktion hinzuzufügen.

Diese answer geht in die Details, wie das zu tun ist.

Eine weitere Option ist die Schlüsselbildanimation. Diese question and answer deckt diesen Ansatz sehr gut ab.

15

Sie können die Animationsfunktion usingSpringWithDamping verwenden.

[UIView animateWithDuration:1.0 delay:0 usingSpringWithDamping:0.2 initialSpringVelocity:5.0 options:UIViewAnimationOptionCurveLinear animations:^{ 
    self.homeLabel.frame = self.view.frame; 
} completion:^(BOOL finished) { 

}]; 

Einstellen des Spring Damping und Initial Spring Velocity können Sie den gewünschten Effekt.

+1

Dies ist die beste Antwort. (voted.) Die Methode 'animateWithDuration: delay: usingSpringWithDamping: initialSpringVelocity: options: animations: completion:' ist für die Aufgaben des OP maßgeschneidert. Ich habe ein Demo-Programm auf GitHub geschrieben, das genau die Hände einer Uhr animiert, die genau diesen Aufruf verwendet, und es gibt einen sehr realistischen Bounce-Look. –

Verwandte Themen