防止 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)
}
}
我有 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)
}
}