【问题标题】:The values of convenience initializer init(keyPath:) for CABasicAnimationCABasicAnimation 的便捷初始化程序 init(keyPath:) 的值
【发布时间】:2017-08-23 18:28:49
【问题描述】:
我将 CABasicAnimation 用于图层动画。在便捷初始化程序 init(keyPath:) 中,我指定了我想要动画的值,但我主要是直观地执行此操作。我的意思是,我知道它应该为图层的 position.x 设置动画,例如,所以我使用该值。但是我在哪里可以找到完整的值列表?我检查了初始化程序和 CABasicAnimation 的文档,发现了一些值示例。
【问题讨论】:
标签:
swift
swift3
core-animation
cabasicanimation
【解决方案1】:
您要查找的资源是Key-Value Coding Extensions page of the Core Animation Programming Guide。
添加了 CGPoint、CGSize、CGRect 和 CATransform3D 类型的属性。
CGPoint
对于点属性,您可以使用.x 和.y。例如:
"position.x" // use a number
CGSize
对于大小属性,您可以使用.width 和.height。例如:
"shadowOffset.height" // use a number
CGRect
对于矩形属性,您可以使用origin 和size,以及在这些属性上添加点和大小。例如:
"bounds.origin.x" // use a number
"frame.size.width" // use a number
"frame.origin" // use a point
CATransform3D
核心动画变换属性增加了scale(.x、.y、.z)、rotation(.x、.y、.z)和translation(@ 987654348@、.y、.z)。例如:
"transform.rotation.z" // use a number
"transform.translation.x" // use a number
您也可以只使用 .scale 作为在所有轴上均匀缩放的数字,.rotation 作为绕 z 轴旋转的数字(与 rotation.z 相同),以及 .translation 作为大小沿 x 轴和 y 轴平移。