iOS 带有震荡效果的动画

原创Blog,转载请注明出处
http://blog.csdn.net/hello_hwc?viewmode=list
我的stackoverflow
profile for Leo on Stack Exchange, a network of free, community-driven Q&A sites


前言:算是对之前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

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值