你如何覆盖 swift 3 中的 layerClass?

How do you override layerClass in swift 3?

我正在尝试覆盖 swift 3 中的方法 layerClass(),但出现错误 Method does not override any method from its superclass。 在 swift 2.x 我是这样做的,有人知道新语法吗?

override func layerClass() -> AnyClass { return CAGradientLayer.self }

当您发现 Method does not override any method from its superclass 的代码在 Xcode/Swift 的旧版本中有效时,请检查 the latest reference

Declaration

class var layerClass: AnyClass { get }

layerClass 现在作为计算 class 属性 导入 Swift.

因此,您需要像这样覆盖它:

override class var layerClass: AnyClass {
    return CAGradientLayer.self
}