防止 IKImageView 处理手势

Prevent IKImageView from handling gestures

我有 class Canvas 和另一个自定义视图 CanvasItem 都是 NSView 的子class。 CanvasItem 有一个 IKImageView 子视图。

Canvas 覆盖 magnifyWithEvent 以对手势做出反应。一切正常,除了在 CanvasItem 之一上完成手势然后 IKImageView 处理事件并缩放图像而不是将其向上传递到视图层次结构的情况。这是一种防止 IKImageView 处理手势的方法吗?

我尝试将 editable 设置为 false 但没有效果。

找到适合我的解决方案。最后它非常简单:我创建了一个新的 IKImageView 的子 class 覆盖了 magnifyWithEvent 并将事件传递给下一个响应者。然后用这个class代替原来的IKImageView

class MyIKImageView : IKImageView {
    override func magnifyWithEvent(event: NSEvent) {
        self.nextResponder?.magnifyWithEvent(event)
    }
}