2016-10-04 104 views
0

我是iOS新手。我已经了解了这两种消息传递的方法,但我无法在它们之间进行选择。iOS中用于消息传递,NSNotification或委派的最佳方法是什么?

+1

如果你想要一对一的呼叫使用代表,如果你想要一对多的使用通知 –

+0

可能重复的[在视图控制器之间传递数据](http://stackoverflow.com/questions/5210535/passing-data-视图间控制器) –

+0

取决于需求。如果你想从一个类传递数据到另一个类然后使用Delegate。如果你想在你的应用程序中添加一个监听器,然后添加通知。根据我的看法取决于需求。 –

回答

0

从概念上讲,委托是一个辅助对象或一个对象,它执行其他对象的部分工作,但它本身无法完成。通常会涉及一个协议,并且引用委托的对象期望它以预定义的方式工作,或者至少以特定于调用类需求的方式工作。

示例:针对UITableViewDelegate定义的所有方法都特定于表活动。

通知更多关于状态更改。发送通知的对象不需要帮助来完成它的工作,它只是让其他对象知道他们想要做出反应的情况。如果没有其他人关心这个变化,那没关系。

示例:接收UIApplicationDidBecomeActiveNotification的对象可以执行当时的开发人员需要的任何操作,而不仅仅是与UIApplication相关的操作。

0

委托模式主要用于委托,因为对象知道委托方法在哪个类中实现。委托对象包含要执行任务的那个类的对象的引用。

在通知模式中,只是通知在整个类中广播,每个类都在搜索观察器方法实现。因此,需要更多时间来搜索观察器方法,以便与委托模式进行比较。

相关问题