考虑以下常见情况:
您的 Cocoa 应用程序中有一些MainView
从 NIB 加载,由MainViewController
. 您MainView
包含一些控件,例如UILabel infoLabel
. 您还有一个MyDelegate
接收某种事件的委托类。
您想确保在MyDelegate
收到其事件时,infoLabel
适当地更新。但是,问题在于MyDelegate
没有对 theMainView
或 the的引用MainViewController
并且不知道标签。
一种解决方案是传递MainViewController
对委托对象的引用,但这感觉不对,因为您可能会发现自己处于对象具有彼此引用的不良情况。
解决这个问题的正确设计是什么?