如何在swift中创建一个圆的动态动画



我的问题是,我想要一个圆圈的动画,它从左向右移动。圆圈是这样创建的:

let point = CGPoint.init(x: 10, y: 10)
let circlePath = UIBezierPath(arcCenter: point, radius: CGFloat(20), startAngle: CGFloat(0), endAngle: CGFloat(Double.pi * 2), clockwise: true)
let shapeLayer = CAShapeLayer()
shapeLayer.path = circlePath.cgPath

我如何创建一个像这样的圆的动画?

我已经在imageView上做了移动动画,你可以在任何视图上尝试。

private func animate(_ image: UIImageView) {

UIView.animate(withDuration: 1, delay: 0, options: .curveLinear, animations: {
image.transform = CGAffineTransform(translationX: self.view.frame.width/2-10, y: 0)
}) { (success: Bool) in
image.transform = CGAffineTransform.identity
self.animate(image) // imageAnime is outlet
self.imageAnim.layer.removeAllAnimations() // if you want to remove animation after its done animating once
}
}

调用这个函数

最新更新