试图从扩展 class 覆盖 NSView 的 drawRect
Trying to override NSView's drawRect from extension class
我正在 Swift 中设计一个 NSView class 扩展。在该扩展 class 中,我试图使用此
覆盖 drawRect
extension NSView {
override func drawRect(rect: NSRect) {
}
有一个错误指向重写并说 方法没有重写它的 superclass 中的任何方法...方法 drawRect with Objective-C (???)选择器 'drawRect' 与之前使用相同 Objective-C 的声明冲突 选择器
什么? Objective-C?我正在使用 swift.
这是怎么回事?
你是扩展而不是子类化然后重写一个已经被定义的方法超类.
drawRect
已经由 NSView
定义,这就是为什么与 已经定义的冲突...
为了创建自定义视图,您需要定义自己的 NSView
子类并覆盖子类的 drawRect
实现。
class MyView: NSView {
override func drawRect(rect: NSRect) {
// Your custom implementation ....
}
}
希望这对您有所帮助
我正在 Swift 中设计一个 NSView class 扩展。在该扩展 class 中,我试图使用此
覆盖 drawRectextension NSView {
override func drawRect(rect: NSRect) {
}
有一个错误指向重写并说 方法没有重写它的 superclass 中的任何方法...方法 drawRect with Objective-C (???)选择器 'drawRect' 与之前使用相同 Objective-C 的声明冲突 选择器
什么? Objective-C?我正在使用 swift.
这是怎么回事?
你是扩展而不是子类化然后重写一个已经被定义的方法超类.
drawRect
已经由 NSView
定义,这就是为什么与 已经定义的冲突...
为了创建自定义视图,您需要定义自己的 NSView
子类并覆盖子类的 drawRect
实现。
class MyView: NSView {
override func drawRect(rect: NSRect) {
// Your custom implementation ....
}
}
希望这对您有所帮助