是否可以使用增强的密钥路径(如
here所述)为Swift 3中的CATransform3D属性添加新的#keyPath关键字?
换句话说就是替换
let scaleAnimation = CABasicAnimation(keyPath: "transform.scale")
喜欢的东西
let scaleAnimation = CABasicAnimation(keyPath: #keyPath(CALayer.transform.???))
解决方法
应该使用CAValueFunction.
let scaleAnimation = CABasicAnimation(keyPath: "transform.scale")
– >
let scaleAnimation = CABasicAnimation(keyPath: #keyPath(CALayer.transform)) scaleAnimation.valueFunction = CAValueFunction(name: kCAValueFunctionScale)
和
let rotationAnimation = CABasicAnimation(keyPath: "transform.rotation")
– >
let rotationAnimation = CABasicAnimation(keyPath: #keyPath(CALayer.transform)) rotationAnimation.valueFunction = CAValueFunction(name: kCAValueFunctionRotateZ)
等等
> rotation.x – > kCAValueFunctionRotateX> rotation.y – > kCAValueFunctionRotateY> rotation.z – > kCAValueFunctionRotateZ>旋转 – > kCAValueFunctionRotateZ> scale.x – > kCAValueFunctionScaleX> scale.y – > kCAValueFunctionScaleY> scale.z – > kCAValueFunctionScaleZ>规模 – > kCAValueFunctionScale> translation.x – > kCAValueFunctionTranslateX> translation.y – > kCAValueFunctionTranslateY> translation.z – > kCAValueFunctionTranslateZ>翻译 – > kCAValueFunctionTranslate
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。