【发布时间】:2011-08-31 11:05:49
【问题描述】:
我读过很多关于 Objective-C 委托的文章和读物,试图理解它们。来自 Java,它们看起来非常像 Java 侦听器。例如,假设我有一个 Java 按钮。当按钮被按下时,我想要一些事情发生。我的代码可能看起来像这样:
ButtonListener myButtonListener = new ButtonListener();
someButton.addActionListener(myButtonListener);
...
class ButtonListener implements ActionListener
{
public void actionPerformed(ActionEvent e)
{
}
}
类似的东西。在objective-c中,我似乎会按照为我的按钮调用setDelegate方法并将“侦听器”作为委托传递给它来做一些事情。然后,实际的按钮类可能会检查该委托是否响应了某个选择器(即 actionPerformed)。如果我以正确的方式考虑这一点,那么代表似乎就像听众一样。那是对的吗?有什么大的不同吗?
谢谢!
【问题讨论】:
标签: java objective-c cocoa delegates listener