IOS中的关键帧动画

关键帧动画可以使你完成flash一样的分步的动画。

//设置一个关键帧动画,总时间,延迟时间等
UIView.animateKeyframesWithDuration(5.0, delay: 1, options: UIViewKeyframeAnimationOptions.LayoutSubviews, animations: { () -> Void in
//接下来加入一个一个的关键帧即可,这里要注意,起始时间和持续时间都是之前设置的总时间的百分比
     UIView.addKeyframeWithRelativeStartTime(0.0, relativeDuration: 0.2, animations: { () -> Void in
         self.redBlock?.backgroundColor = UIColor.blackColor()
     })
     UIView.addKeyframeWithRelativeStartTime(0.2, relativeDuration: 0.2, animations: { () -> Void in
         self.redBlock?.center = self.view.center
     })
     UIView.addKeyframeWithRelativeStartTime(0.4, relativeDuration: 0.6, animations: { () -> Void in
         let rotation = CGFloat(270 * M_PI / 180.0)
         self.redBlock?.transform = CGAffineTransformMakeRotation(rotation)
     })
     }) { (Bool) -> Void in
         //在动画全部结束时要做的事
         self.redBlock?.backgroundColor = UIColor.blueColor()
 }

你可能感兴趣的:(ios,动画)