从 NSView 发送动作,就像使用 NSButton
Posted
技术标签:
【中文标题】从 NSView 发送动作,就像使用 NSButton【英文标题】:Send actions from a NSView just like with NSButton 【发布时间】:2017-02-01 17:38:39 【问题描述】:我正在制作一个幻灯片应用程序,我希望能够在其中单击显示幻灯片的视图以暂停或播放它。我希望就像使用按钮一样,我可以向我的 ViewController 发送一个操作,从而调用一个可以称为 slideshowViewClicked
的函数。
我发现有人试图用通知做类似的事情,但发送操作对我来说似乎是正确的方法。
那么有人可以向我解释如何将操作从视图发送到其 ViewController,就像使用按钮完成一样?
提前非常感谢!
【问题讨论】:
我认为这可以解决您的问题。 ***.com/questions/27880607/… 【参考方案1】:在您的 UIView 子类中,实现相应的鼠标事件(例如 mouseDown
)并调用 slideshowViewClicked
。
【讨论】:
【参考方案2】:您可以拨打-[NSApplication sendAction:to:from:]
。如果您使用nil
作为目标,应用程序对象将搜索响应者链。否则,action 方法将直接发送到目标。
您可以考虑将您的类设为NSControl
的子类,尽管这确实涉及一些包袱。在这种情况下,您将调用继承的 -sendAction:to:
方法。
【讨论】:
以上是关于从 NSView 发送动作,就像使用 NSButton的主要内容,如果未能解决你的问题,请参考以下文章