你如何在 swift 3 中覆盖 layerClass? [英] How do you override layerClass in swift 3?
问题描述
我试图在 swift 3 中覆盖方法 layerClass()
但我收到错误 Method 没有覆盖其超类中的任何方法
.在 swift 2.x 我就是这样做的,有谁知道新的语法?
override func layerClass() ->AnyClass { 返回 CAGradientLayer.self }
请查看最新参考
a> 当您发现 Method 没有覆盖其超类中的任何方法
时,它的代码在以前版本的 Xcode/Swift 中有效.
声明
class var layerClass: AnyClass { get }
layerClass
现在作为 Swift 中的计算类属性导入.
所以,你需要像这样覆盖它:
override class var layerClass: AnyClass {返回 CAGradientLayer.self}
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 }
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
}
这篇关于你如何在 swift 3 中覆盖 layerClass?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!