我有一个ContactsViewController - 每当选择一行时 - 打开MessageViewController(使用pushViewController)。 ContactsViewController和MessageViewController都'注册'来接收DatastoreDelegate消息。奇怪的是,在加载我的应用程序时它一切正常,但是一旦我导航到MessageViewController,我的ContactsViewController上的委托方法就不会再被调用。这两个控制器都应该处理[messageAdded:(Message *)message]方法,但只有MessageViewController在打开一次后才继续接收消息。委托没有被调用
有没有人有任何想法如何使这项工作?
谢谢,我的印象是,代表们可以发送消息给多个类,但我想我错了这个假设。我将使用NotificationCenter或查找不同的方式来实现我的代码。 – 2010-02-02 16:30:45
任何对象都可以将消息发送到多个类。类通常*不是*代表;你通常只会让一个实例成为一个委托。任何具有委托的对象只有一个委托;两个对象不能同时被委托。如果您需要,请使用通知。 – 2010-02-02 20:04:46