UIViewAnimationCurveEaseOut,部署弹性效果ios

时间:2013-08-27 17:40:45

标签: ios animation uiviewanimation

我使用以下代码段制作对象动画。

[UIView animateWithDuration:0.3 delay:0.2
    options:(UIViewAnimationCurveEaseOut|UIViewAnimationOptionAllowUserInteraction)
    animations:^{[UIView setAnimationDelegate:self];
    [UIView setAnimationDidStopSelector:@selector(faceRight:finished:context:)];
    self.viewMiniDetalhe.center = CGPointMake(500, 150);
}completion:^(BOOL finished){
    NSLog(@"Move to left done");
}];

但是我想实现一种弹性效果,称为easeOutElastic。

ATT,

1 个答案:

答案 0 :(得分:3)

如果您使用的是iOS7,则可以使用[UIView animateWithDuration: delay: usingSpringWithDamping: initialSpringVelocity: options: animations: completion:]类方法 您可以像弹簧一样为视图设置动画,并设置一些额外的参数,如阻尼和初始速度。

damping < 1.0设置为具有弹性行为。它越小,它就越有弹性。

initialSpringVelocity只是发射时的速度等于一秒内行进的距离。

如果您想了解更多信息,请here's the documentation

[UIView animateWithDuration: 2.0f delay: 0.0f usingSpringWithDamping: 0.5f initialSpringVelocity: 1.0f options:UIViewAnimationOptionAllowAnimatedContent animations:
{
    myView.frame = CGRectMake(20, 20, myView.frame.size.width, myView.frame.size.height);
}completion:nil];