ios从不同类调用方法的不同方式[关闭]

Posted

技术标签:

【中文标题】ios从不同类调用方法的不同方式[关闭]【英文标题】:ios different ways of calling a method from different classes [closed] 【发布时间】:2013-02-19 16:41:42 【问题描述】:

从多个类调用函数的不同方式是什么?

我知道协议、通知,但任何人都可以用例子来描述所有这些,哪一个是最好的?

谢谢

【问题讨论】:

请定义“最佳”。 表示使用的最佳实践是什么。和首选。 这完全取决于你想做什么。你读过 Apple Developer Library 中的Communicating with Objects 吗? 【参考方案1】:

我不认为这是一个如此糟糕的问题。很多人对这个问题的“最佳”方面做出了否定的反应。一个简单的改写可能是“什么情况最适合每种对象间通信”。

总结起来比较常见的有以下几种:

直接调用(google Objective-C 语言方法)- 大多数 常见、最直接、紧密协作的对象。 KVO (google "Objective-C KVO") - 让特定对象观察特定 另一个值的变化。 NSNotification (google "NSNotification") - 让任何/许多感兴趣的对象观察另一个对象想要广播的任何事件 委托(谷歌“Objective-C 委托”)- 当一个对象需要其他对象代表它完成工作时,它会发布一个委托协议。其他对象可以实现这个协议(“符合它”),然后被分配为委托。 (在我看来,这个被过度使用了)

有大量关于如何实现每一个的网络资料(谷歌他们了解详细信息)。

【讨论】:

感谢兄弟,我会尝试搜索并找到示例。 我找不到直接调用。 那只是调用一个方法。 ClassA 有一个 ClassB 的实例,它实现了方法 'foo'。它说:[myClassB foo]; 哦,你的意思是+函数 是的,但实例方法也是如此。我的意思是类进行通信的最基本方式是一个对象拥有另一个对象的句柄并在其上调用方法(类或实例方法)。谷歌“google.com/…”

以上是关于ios从不同类调用方法的不同方式[关闭]的主要内容,如果未能解决你的问题,请参考以下文章

使用 Jasmine 在 AngularJS 中测试去抖函数从不调用该函数

如何从现有对象的不同类调用方法(Obj C)

iOS:通用应用程序不会旋转,从不调用 willRotateToInterfaceOrientation

静态方法只能通过类名调用吗?

试图检测抖动,从不调用motionEnded

@Transactional注解失效场景之——同类中方法调用,事务失效