如果我编写Swift 3代码,它将看起来像这样:

let animation = CABasicAnimation(keyPath: #keyPath(CAShapeLayer.path))

但是我尝试为keyPath使用Swift 4新语法,并且得到了:
let keyPath = \CAShapeLayer.path
let animation = CABasicAnimation(keyPath: keyPath) // error line



在这种情况下,如何使用Swift 4使用 key 路径?

最佳答案

至于现在CABasicAnimation仍然使用旧的String keyPaths,因此即使您使用的是Swift 4,您仍然应该使用#keyPath(CAShapeLayer.path)

Apple将来可能会更新其所有API,以使用这些更安全的 key 路径引用。但是现在您被“不安全”的字符串所困扰。

关于ios - 如何在CAShapeLayer动画中使用Swift 4 KeyPath,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/45564192/

10-12 14:45