iOS动画学习之旋转图形

iOS动画旋转是对View的操作,而不是对layer的操作,关键点是需要设置锚点(anchorPoint),旋转轴和旋转度数

func spinAndTransform() { 
    // 1 
    layer.anchorPoint = CGPointMake(0.5, 0.6)  
    // 2 
    var rotationAnimation: CABasicAnimation = CABasicAnimation(keyPath: "transform.rotation.z") 
    rotationAnimation.toValue = CGFloat(M_PI * 2.0) 
    rotationAnimation.duration = 0.45 
    rotationAnimation.removedOnCompletion = true 
    layer.addAnimation(rotationAnimation, forKey: nil)  
}

注意这里的anchorPoint取值是相对于旋转的view而言,取值0-1,也就是说锚点位于左上角,取值为(0,0),锚点位于右下角,取值为(1,1),其他点则介于这0-1之间,然后是设置旋转轴,这里是围绕z轴旋转,也就是和屏幕垂直的轴,设置旋转角度为360度,也就是2*PI。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Core Animation Core Animation,中文翻译为核心动画,它是一组非常强大的动画处理API,...
    45b645c5912e阅读 3,081评论 0 21
  • 在iOS中随处都可以看到绚丽的动画效果,实现这些动画的过程并不复杂,今天将带大家一窥ios动画全貌。在这里你可以看...
    每天刷两次牙阅读 8,595评论 6 30
  • Core Animation其实是一个令人误解的命名。你可能认为它只是用来做动画的,但实际上它是从一个叫做Laye...
    小猫仔阅读 3,827评论 1 4
  • 在iOS中随处都可以看到绚丽的动画效果,实现这些动画的过程并不复杂,今天将带大家一窥iOS动画全貌。在这里你可以看...
    F麦子阅读 5,156评论 5 13
  • 在iOS实际开发中常用的动画无非是以下四种:UIView动画,核心动画,帧动画,自定义转场动画。 1.UIView...
    请叫我周小帅阅读 3,195评论 1 23