use*_*004 4 animation equation uiviewanimation uiviewanimation-curve ios7
给定[UIView animateWithDuration:delay:usingSpringWithDamping:initialSpringVelocity:options:animations:completion:]中使用的spring参数:
时间与位置图的数学方程是什么?
(我试图在iOS 7中处理新的弹簧动画API,但是我没有得到好的结果,实验花了太长时间.我的目标是尽可能接近我的动画曲线如果我使用Core Animation而不是UIView的块对象动画,我会指定使用CAMediaTimingFunction.)
阻尼比
弹簧动画接近其静止状态时的阻尼比.
要在没有振荡的情况下平滑地减速动画,请使用值1.使用接近零的阻尼比来增加振荡.
当阻尼值接近0.0时,弹簧变得更有弹性.
速度
初始弹簧速度.要平滑开始动画,请将此值与附件之前的视图速度相匹配.
初始弹簧速度的值1.0对应于一秒内经过的总动画距离.例如,如果总动画距离为200点,并且您希望动画的开始与100 pt/s的视图速度匹配,则使用值0.5.
例:
[UIView animateWithDuration:2.0
delay:0.0
usingSpringWithDamping:0.4
initialSpringVelocity:0.5
options:(UIViewAnimationOptions)options
animations:^{
}
completion:nil];
Run Code Online (Sandbox Code Playgroud)

我相信由此产生的数学方程就是这里描述的: http: //en.wikipedia.org/wiki/Damping
\n\n阻尼参数对应于阻尼比 \xce\xb6,并且 \xce\xb6 = 1 会产生所谓的临界阻尼弹簧,它会尽快收敛到最终位置而不发生振荡。\n初始速度为零时,它对应于类似缓入缓出曲线,但缓入部分更陡,缓出部分更平滑。
\n\n对于大于 1 的阻尼比,动画看起来会更加线性。\n对于小于 1 的阻尼比,将出现围绕最终位置的振荡。它的频率可以从动画持续时间和可能的其他参数中得出。
\n\n这是文档中关于初始速度的说明,应该非常清楚:
\n\n\n\n初始弹簧速度。为了使动画顺利启动,请将此值与附加之前的视图\xe2\x80\x99s 速度相匹配。\n 值 1 对应于一秒内经过的总动画距离。例如,如果总动画距离为 200 点,并且您希望动画的开始匹配 100 点/秒的视图速度,请使用值 0.5。
\n
| 归档时间: |
|
| 查看次数: |
1744 次 |
| 最近记录: |