问题
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 }
回答1:
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
}
来源:https://stackoverflow.com/questions/39081027/how-do-you-override-layerclass-in-swift-3