1.创建动画
let rotationAnim = CABasicAnimation(keyPath: "transform.rotation.z")
- transform.rotation.z这个是旋转的方向(z轴方向旋转)
2.设置动画属性
// 从哪里开始旋转(从0开始)
rotationAnim.fromValue = 0
// 旋转到哪里(旋转一圈)
rotationAnim.toValue = (Double.pi * 2)
// 旋转这么一圈的时间(5s)
rotationAnim.duration = 5
// 旋转重复的次数(最大次数,一直旋转)
rotationAnim.repeatCount = MAXFLOAT
// 这个属性很特别,因为核心动画都会因为他切换界面导致动画消失,所以将这个属性设置成false,切换界面回来之后他还会存在
rotationAnim.isRemovedOnCompletion = false
3.将动画添加到涂层
rotationView.layer.add(rotationAnim, forKey: nil)
- rotationView是我自己的属性,比如我在storyBoard中拖出来的控件,也可以是利用代码创建的控件
- 第一个参数 : 我们需要使用的动画
- 第二个参数 : 一般都是nil