对于大多数操作,我只需在 InterfaceBuilder 中单击并拖动,即可将某个接口对象的调用“连接”到我的代码。例如,如果我想知道用户何时单击表格中的一行,我将连接从表格的操作拖到控制器的操作。
但是现在让我们考虑用户双击一行。如果我希望在发生这种情况时调用我的某个操作,我不仅需要调用,-[NSTableView setDoubleAction]
还需要调用. 为什么? -[NSControl setTarget]
需要明确的是,我不是在问为什么 Interface Builder 不支持setDoubleAction
. 所有工具都有局限性。我正试图更好地理解如何以及为什么setTarget
似乎没有必要,除非并且直到我想setDoubleAction
工作。提出这个问题的另一种方法是:为什么我不需要在 Interface Builder 中做任何事情来设置表格(单击)操作的目标?