【发布时间】:2017-10-09 15:09:07
【问题描述】:
我在将 ViewController 之间的数据作为操作传递时遇到问题。这意味着以下内容:
ViewController1 - NavigationControllers 等 - ...
|
|
ViewController2 - - - - - - ...
所以我有两个 ViewController。 ViewController1 有一个变量(假设 var myName:String = "Joana") 我想通过单击 ViewController2 中的按钮来更改它。 我的问题是:我该怎么做(我知道如何在通过 segue 直接连接但不与动作结合的 VC 之间传递数据,这是我的问题)? 我听说过准备(对于 segue:UIStoryboardSegue,发件人:Any?),但我认为它只有在两个 VC 之间存在(直接)segue 时才有效。 总结:
VC2: Button: action -> change var 'myname' on VC1 to 'hello', no direct segue.
提前感谢您的帮助! :-)
【问题讨论】:
-
您可以通过代码创建一个 segue 以返回到视图控制器 1 并传递数据,或者您可以拥有一个类并编辑一个类,并且由于类是引用类型,因此将其更改为一个place 将在另一个地方更改它。
-
如果按下按钮时 ViewController1 对象仍在内存中,您可以向其发送通知并附加数据作为通知对象或用户信息字典。
-
其实有很多方法可以做到这一点。你可以使用通知、委托、单例类...
-
好的,谢谢大家,等我找到最佳解决方案后再给您回信????????
标签: swift xcode uiviewcontroller swift3 action