iOS代表而不是通过segue传递数据

时间:2015-06-11 15:03:23

标签: ios swift delegates

我正在努力学习代表们如何工作并围绕这个概念。我发现我得到了一些想法。我知道你使用它来将数据从一个视图控制器传递到另一个视图控制器,但是如果我只是从segue发送数据并且每次第一个视图控制器出现时,它会使用那些数据吗?

例如,我有2个视图控制器 1是homeViewController
2是editViewController 我有一个名为“addressOfHome”的变量,它是homeViewController(1)中的一个字符串 在homeViewController下的方法“viewDidAppear”
我还设置了addressLabel = addressOfHome 然后我只是将editViewController(2)中的数据传递给homeViewController(1)
当segue的目标vc是homeViewController时?

我很难解释事情,所以我为此道歉,但我尽了最大努力。谢谢你的时间!

2 个答案:

答案 0 :(得分:0)

委托主要用于对另一个对象进行“触发操作”。

一个对象委托一种方法来处理别人的事情,例如当你点击UIAlertView按钮时,如果它的委托是在viewController上设置的,那么alertView:clickedButtonAtIndex将在VC上执行,因为它可以做出反应想

  

我解释事情很糟糕

哈哈,是的,你是!

答案 1 :(得分:0)

代表不是这样的 - 委托是一种覆盖类的某些功能的默认行为的方法,而不创建自己的子类。请参阅此帖子:How does a delegate work in objective-C?

您是否正在尝试了解代理的工作方式(在这种情况下,我不认为您的示例是需要代理的代码)或者您是否尝试实现您描述的功能,并认为委托是这样做的方法? (我想你真的想要一个数据源)。