How do you override layerClass in swift 3?

2019-01-15 13:29发布

I'm trying to override the method layerClass() in swift 3 but I'm getting the error Method does not override any method from its superclass. In swift 2.x I was doing like this, does anyone know the new syntax?

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

标签: swift3
1条回答
来,给爷笑一个
2楼-- · 2019-01-15 14:15

Please check the latest reference when you find Method does not override any method from its superclass with code which worked in former versions of Xcode/Swift.

Declaration

class var layerClass: AnyClass { get }

layerClass is now imported as a computed class property in Swift.

So, you need to override it like this:

override class var layerClass: AnyClass {
    return CAGradientLayer.self
}
查看更多
登录 后发表回答