Objective c 斯坦福iTunes U CS193P作业3,两个视图控制器之间的通信

Objective c 斯坦福iTunes U CS193P作业3,两个视图控制器之间的通信,objective-c,uiviewcontroller,protocols,communication,cs193p,Objective C,Uiviewcontroller,Protocols,Communication,Cs193p,好的,我知道新的绘图vc的模型将是计算器大脑的一个子类,但是我如何将计算器大脑的程序堆栈从旧vc获取到我的新vc的绘图大脑?我必须在故事板上往下看吗 我在新的轴设置上有挤压和平移功能,以及在新的图形大脑和图形vc之间进行通信的代理。但我的程序堆栈不是用户在旧MVC中“被困”之前输入的吗 我想我已经记下了这个概念,但我不认为这种交流会发生 提前谢谢 ***对于那些没有学习本课程的人,我有两个由NavigationController链接的MVC。用户输入存储在中的一系列数字和操作(在第一个MVC中

好的,我知道新的绘图vc的模型将是计算器大脑的一个子类,但是我如何将计算器大脑的程序堆栈从旧vc获取到我的新vc的绘图大脑?我必须在故事板上往下看吗

我在新的轴设置上有挤压和平移功能,以及在新的图形大脑和图形vc之间进行通信的代理。但我的程序堆栈不是用户在旧MVC中“被困”之前输入的吗

我想我已经记下了这个概念,但我不认为这种交流会发生

提前谢谢


***对于那些没有学习本课程的人,我有两个由NavigationController链接的MVC。用户输入存储在中的一系列数字和操作(在第一个MVC中),然后存储在第一个MVC模型中的数组中。当按下一个按钮时,它会转到一个新的MVC,该MVC需要在上一个MVC中输入的数组。如何在两个看似独立的MVC之间传输该阵列?我不认为我可以在第二个VC中拥有一个属性并从第一个VC中设置它,因为它(第二个MVC)还没有实例化。可能是因为准备口琴,但我不确定

通过CS193P(远远超过一半),我想我理解你的问题。以下是您需要记住的内容:

沿MVC(C-->V)路径发送属性值,在这种情况下,V保存另一个MVC;使用PrepareForSegue。无论目标是否已实例化,您都需要做以下几件事:

  • 在第1类的.h或.m文件头中导入第2类
  • 在prepareForSegue中,创建第二个类的实例,并将其设置为等于segue.destinationViewController。您需要将后者键入第二个类
  • 现在,您可以将您创建的(第二类)实例的属性设置为您想要的任何值
  • 您不能从prepareForSegue为第二个类设置任何IBoutlet值,因为只有在ViewDidLoad之后才会设置IBoutlet
  • 出于某种奇怪的原因,如果您确实使用了一个条件来检查segue.identifier,那么您将需要将这些语句包含在{}中,即使它只是一条语句
  • 希望这有帮助,让果汁流动


    九巴

    我认为你的问题假设你对自己的行为了解太多。假装我们对CS193P一无所知(因为我们不知道),然后再次尝试提出您的问题。太棒了,这正是我所需要的!我被困了很长时间,所以这场比赛确实让我重新开始。