您的位置:首页 > 移动开发 > IOS开发

iOS 带有震荡效果的动画

2015-10-14 12:17 447 查看
原创Blog,转载请注明出处

http://blog.csdn.net/hello_hwc?viewmode=list

我的stackoverflow



前言:算是对之前CoreAnimation系列的补充吧,iOS中,实现震荡这样的物理效果还是比较简单的,复杂的物理动画可以通过UIDynamic动画(之前的这篇文章讲解过)

效果-注意结束的时候可以看到View震动了一下,别小看这一点点的效果,用户体验就是在每一个一点点中拉开差距的



代码

UIView.animateWithDuration(0.4, delay: 0.0,
usingSpringWithDamping:0.6,
initialSpringVelocity: 1.0,
options:UIViewAnimationOptions.CurveEaseInOut,
animations: { () -> Void in
self.testview.center = self.view.center
}) { (finished) -> Void in

}




代码

UIView.animateWithDuration(0.4, delay: 0.0,
usingSpringWithDamping:0.6,
initialSpringVelocity: 1.0,
options:UIViewAnimationOptions.CurveEaseInOut,
animations: { () -> Void in
self.testview.transform = CGAffineTransformMakeScale(2.0, 2.0)
}) { (finished) -> Void in

}


实现函数

class func animateWithDuration(_ duration: NSTimeInterval,
delay delay: NSTimeInterval,
usingSpringWithDamping dampingRatio: CGFloat,
initialSpringVelocity velocity: CGFloat,
options options: UIViewAnimationOptions,
animations animations: () -> Void,
completion completion: ((Bool) -> Void)?)


参数详解

duration 动画从开始到结束的时间间隔

delay 延迟的时间

dampingRatio 在接近最终状态的时候震荡的幅度,0到1,1震荡最小。

velocity 最初条约的速度,例如,如果动画的距离是200,这个值是0.5,那么速度就是100pt/s

animations 实际要执行的动画

completion 动画结束时候执行的block
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  ios 动画 震荡