看了facebook出品的pop动画库后,发现其中的弹簧效果很给力,但有些人也许不喜欢再去引入别的库,因此Google了一下发现其实Apple自带的API就能实现这种弹簧效果:
API:(iOS7后可用)
+ (void)animateWithDuration:(NSTimeInterval)duration delay:(NSTimeInterval)delay usingSpringWithDamping:(CGFloat)dampingRatio initialSpringVelocity:(CGFloat)velocity options:(UIViewAnimationOptions)options animations:(void (^)(void))animations completion:(void (^)(BOOL finished))completion
Spring Animation 的 API 和一般动画相比多了两个参数,分别是 usingSpringWithDamping
和 initialSpringVelocity
。
usingSpringWithDamping
的范围为 0.0f
到 1.0f
,数值越小「弹簧」的振动效果越明显。
initialSpringVelocity
则表示初始的速度,数值越大一开始移动越快,值得注意的是,初始速度取值较高而时间较短时,也会出现反弹情况。
以上的例子可以到这边参考:https://github.com/FreeMind-LJ/Animating
时间: 2024-10-08 10:08:05