首页 > 网站 > 建站经验 > 正文

iOS动画――ViewAnimatio!ns

2019-11-02 14:32:18
字体:
来源:转载
供稿:网友

   这一篇我们来说说UIKit中的动画API,期中包括:

  UIView.UIView.animateWithDuration

  UIView.transitionWithView

  UIView.animateKeyframesWithDuration

  UIView.addKeyframeWithRelativeStartTime

  今天的故事就将围绕这些API展开,阐述他的前世今生。

  UIKit动画API使用起来十分简单与方便,他避免了Core Animation的复杂性,虽然事实上UIKit动画API的底层使用的也是Core Animation。

  来看第一个,UIView.UIView.animateWithDuration

  先来看一下函数原型:

  class func animateWithDuration(duration: NSTimeInterval, delay: NSTimeInterval, usingSpringWithDamping dampingRatio: CGFloat, initialSpringVelocity velocity: CGFloat, options: UIViewAnimationOptio

巴巴影院[www.aikan.tv/special/babayingyuan/]
ns, animations: () -> Void, completion: ((Bool) -> Void)?)

  一共七个参数:

  duration

  表示动画执行时间。

  delay

  动画延迟时间。

  usingSpringWithDamping

  表示弹性属性。

  initialSpringVelocity

  初速度。

  options

  可选项,一些可选的动画效果,包括重复等。

  animations

  表示执行的动画内容,包括透明度的渐变,移动,缩放。

  completion

  表示执行完动画后执行的内容。

  关于这些参数,选一个列子,尝试不同的参数,这样可以更好的理解每个参数的意义。

iOS动画——ViewAnimations 电脑高手

  好丑的动画

  self.animationView2.alpha = 0

  self.animationView3.alpha = 0

  UIView.animateWithDuration(5, delay: 0.5, usingSpringWithDamping: 0.5, initialSpringVelocity: 0, options: .Repeat, animations: { () -> Void in

  self.animationView.center.y += 100

  }) { (Bool) -> Void in

  println("finish")

  }

  UIView.animateWithDuration(5, delay: 0.5, usingSpringWithDamping: 0.5, initialSpringVelocity: 0, options: .Repeat, animations: { () -> Void in

  self.animationView2.alpha = 1

  }) { (Bool) -> Void in

  println("finish")

  }

  UIView.animateWithDuration(5, delay: 0.5, usingSpringWithDamping: 0.5, initialSpringVelocity: 0, options: .Repeat, animations: { () -> Void in

  self.animationView3.center.y -= 100

  self.animationView3.alpha = 1

  }) { (Bool) -> Void in

  println("finish")

  }

  代码就不逐行解释,三个UIView.animateWithDuration分别操作三个方块。第一个方块是一个移动动画,第二个方块是一个透明度渐变动画,第三个方块是移动加透明度渐变的组合动画,可能看的不是很清楚。不得不说这个动画真的很丑~~~

  UIView.UIView.animateWithDuration这个API说穿了就是逐渐改变UIView的某项属性,这些属性包括:位置,大小,透明度,颜色等等。

  再来看一下UIView.transitionWithView,这是一个过度动画,主要用于UIView进入或者离开视图。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表