最近我陷入了一个问题,因此我无法继续进行下一个编码部分。
有两个 View Controller (比如说第一个.m 和第二个.m),我想在不使用 Storyboard 的情况下将参数数据从一个传递到另一个 View Controller 。但对我来说棘手的部分是第二个 View Controller 已经在 AppDelegate.m 文件中启动。
如果我在第一个 View Controller 中使用一些导入头文件启动了第二个 View Controller ,我可以传递数据,例如..
@import "Second.h"
Second *secondView = [[Second alloc] initWithNibName:@"SecondNib" bundle:nil];
secondView.someStringValue = @"passThisString";
但是,这种编码创建了一个新的第二个 View Controller ,这不是我想要的。我发现有一个类似的东西
myAppDelegate *appDelegate = (myAppDelegate *)[[UIApplication sharedApplication] delegate];
连接到 AppDelegate.m 文件。但是经过几天的努力,我的大脑开始昏迷。请给我任何建议。有没有办法在不使用 Storyboard 的情况下将数据传递给现有的 View Controller ?或通过 AppDelegate 到第二个 View Controller 的任何方式。任何帮助将不胜感激
最佳答案
@jazzed28 您可以在不启动 Second
的情况下执行此操作.您只需要访问已经启动的Second
.所以声明Second
在 myAppDelegate.h
作为 property
像这样——
@property (nonatomic, strong) Second *svc;
然后,每当您需要第二次时,您都可以像这样访问-
myAppDelegate *appDelegate = (myAppDelegate *)[[UIApplication sharedApplication] delegate];
appDelegate.svc
关于ios - 以编程方式将数据从一个 View Controller 传递到现有 View Controller ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17781700/