从VC1开始,从那里你可以加载VC2。在VC2中,您可以加载VC3。
我的导航工作正常VC1-> VC2-> VC3和向后相同。
VC3允许用户返回VC1。
我想知道是否有可能告诉VC3 VC1现在是它的代表。 它适用于VC2,但我想在VC1中使用VC3中保存的数据。
答案 0 :(得分:1)
创建委托以将值从一个类传递到另一个类。 然后在VC1和VC2中设置委托,其中VC1从VC2接收,VC2从VC3接收
然后从VC3调用委托并将值传递给VC2。在VC2中,被调用的方法实现其委托给VC1的调用,值在vc1中
VC3-->del-->VC2-->del->VC1
答案 1 :(得分:0)
如果VC1是VC2的委托,您只需将VC2的委托属性分配给VC3的委托属性
在将VC3推送到导航堆栈之前的VC2 @implementation中:
vc3Instance.delegate = self.delegate
答案 2 :(得分:0)
我建议在每个视图控制器中添加一个名为“master”的弱属性,并使其指向呈现它的视图控制器。完成后,您可以通过以下方式从VC3获取VC1(及其所有数据):
VC1ViewController *vc1 = self.master.master;