美文网首页
Swift - 使用CAKeyframeAnimation实现关

Swift - 使用CAKeyframeAnimation实现关

作者: 小驴拉磨 | 来源:发表于2020-07-22 16:47 被阅读0次

1、CAKeyframeAnimation介绍
CAKeyframeAnimation可以实现关键帧动画,这个类可以实现某一属性按照一串的数值进行动画,就像是一帧一帧的制作出来一样。
2、使用样例(设置五个关键点坐标,图片依次按关键点移动)

//设置5个位置点
let p1 = CGPoint(x: 0.0, y: 0.0)
let p2 = CGPoint(x: 300, y: 0.0)
let p3 = CGPoint(x: 0.0, y: 400)
let p4 = CGPoint(x: 300, y: 400)
let p5 = CGPoint(x: 150, y: 200)
 
//赋值
animation.values = [NSValue(cgPoint: p1), NSValue(cgPoint: p2),
                    NSValue(cgPoint: p3), NSValue(cgPoint: p4), NSValue(cgPoint: p5)]
 
//每个动作的时间百分比
animation.keyTimes = [NSNumber(value: 0.0), NSNumber(value: 0.4),
                      NSNumber(value: 0.6), NSNumber(value: 0.8), NSNumber(value: 1.0), ]
 
animation.delegate = self
animation.duration = 6.0
 
self.imageView.layer.add(animation, forKey: "Image-Move")

3、可以设置动画代理,监听开始和结束动作

func animationDidStart(_ anim: CAAnimation) {
    print("动画开始")
}
 
func animationDidStop(_ anim: CAAnimation, finished flag: Bool) {
    print("动画结束")
}

原文出自:www.hangge.com

相关文章

网友评论

      本文标题:Swift - 使用CAKeyframeAnimation实现关

      本文链接:https://www.haomeiwen.com/subject/ifdtlktx.html