这样编译:
import AppKit
class CustomView: NSView, CALayerDelegate {
func layoutSublayers(of layer: CALayer) {}
}
Run Code Online (Sandbox Code Playgroud)
但是,这不是:
import AppKit
import SwiftUI
class CustomView: NSView, CALayerDelegate {
func layoutSublayers(of layer: CALayer) {}
}
Run Code Online (Sandbox Code Playgroud)
这是一个错误:
... error: redundant conformance of 'CustomView' to protocol 'CALayerDelegate'
class CustomView: NSView, CALayerDelegate {}
^
... note: 'CustomView' inherits conformance to protocol 'CALayerDelegate' from superclass here
class CustomView: NSView, CALayerDelegate {}
^
Run Code Online (Sandbox Code Playgroud)
任何想法如何解决这个问题?
如果删除CALayerDelegate一致性,则不会调用委托方法。