在第一个鼠标/触控板单击视图之前,在NSScrollView子类中未调用touches

时间:2018-11-12 09:50:31

标签: macos gesture nsscrollview nsevent

我继承了NSScrollView的子类,以通过touchesBegan / Moved / Ended监视两指平移。只要在应用启动后单击一次视图,它就可以工作。然后它将一直有效,直到我下次重新启动该应用程序为止。

我想我在这里遗漏了一些非常明显的东西。也许是允许其立即接受触摸的NSScrollView / NSView属性。有人可以帮忙吗?

顺便说一句,当我添加NSTableView时,NSScrollView是在Storyboard中自动创建的。

1 个答案:

答案 0 :(得分:0)

找到了解决方案。

这实际上是一个菜单栏应用程序,因此视图控制器位于NSPopover内部。在弹出窗口中显示该应用程序不会使该应用程序成为激活应用程序。我必须使用以下行将其激活才能响应触摸。

NSApplication.shared.activate(ignoringOtherApps: true)