ios - ViewController 的多个代表

ios - Multiple Delegates for a ViewController

我有一个 ViewController 就像两个 VC 的容器。这个class叫做MasterDetailViewController。是自定义视图控制器容器。 MasterDetailViewController 可以与 Master 或 Detail View Controller 通信,因此它们知道状态,例如:"Animation of showing detail ViewController started"、"Visible rect for VC" 和类似的消息。问题是我需要不同的大师方法和不同的细节方法。

有两个协议可以吗:
MasterViewControllerDelegate DetailViewControllerDelegate

而MasterViewController有两个属性delegateM和delegateD,每个属性都符合每个协议?

我问这个是因为委托模式是一个 1:1 关系,我从来没有见过这样使用它。

谢谢

在这种情况下,我所做的是将主控制器的弱引用传递给它的任何子控制器。我不称他们为代表。当各种各样的 类 可以使用相同的委托协议时,委托协议就有意义了。在这种情况下,直接调用它就可以了。