1

Apple Docs中说:

通过委托属性定位对象委托的存在还有其他编程用途。例如,使用委托,同一程序中的两个协调控制器很容易找到彼此并进行通信。例如,控制整个应用程序的对象可以使用类似于以下的代码找到应用程序检查器窗口的控制器(假设它是当前键窗口):

id winController = [[NSApp keyWindow] 委托]; 您的代码可以通过执行类似于以下的操作来找到应用程序控制器对象(根据定义,全局应用程序实例的委托):

id appController = [NSApp 委托];

我不清楚这一点,请任何人详细解释一下。

4

1 回答 1

0

我认为这意味着委托对象可以用作代码不同部分之间的通信接口,并且可以很容易地从需要的地方访问它们。

在上面的示例中,winController 和 appController 具有不同的功能。他们不知道彼此的内部运作。委托接口为他们提供了一种通信方式。此外,访问 delegates 也很容易。

于 2013-02-07T10:55:48.410 回答