
let fullRotation = CGfloat(M_PI * 2) let duration = 2.0 let delay = 0.0 let options = UIVIEwKeyframeAnimationoptions.Repeat | UIVIEwKeyframeAnimationoptions.CalculationModelinear UIVIEw.animateKeyframesWithDuration(duration,delay: delay,options: options,animations: { UIVIEw.addKeyframeWithrelativeStartTime(0,relativeDuration: 1/3,animations: { swirls[l].transform = CGAffinetransformMakeRotation(1/3 * fullRotation) }) UIVIEw.addKeyframeWithrelativeStartTime(1/3,animations: { swirls[l].transform = CGAffinetransformMakeRotation(2/3 * fullRotation) }) UIVIEw.addKeyframeWithrelativeStartTime(2/3,animations: { swirls[l].transform = CGAffinetransformMakeRotation(3/3 * fullRotation) }) },completion: {finished in }) 编辑:我看到有人建议先前的解决方案可用,但它不能用于连续不间断的旋转.对我有用的唯一技巧是我在下面选择的答案.谢谢
解决方法 我不确定你的代码有什么问题,但我用这种方法实现了连续旋转,@IBAction func rotateVIEw(sender: UIbutton) { UIVIEw.animateWithDuration(0.5,delay: 0,options: .Curvelinear,animations: { () -> VoID in self.spinningVIEw.transform = CGAffinetransformRotate(self.spinningVIEw.transform,CGfloat(M_PI_2)) }) { (finished) -> VoID in self.rotateVIEw(sender) } } @H_404_30@ 总结 以上是内存溢出为你收集整理的ios – Swift连续旋转动画不是那么连续全部内容,希望文章能够帮你解决ios – Swift连续旋转动画不是那么连续所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)