Ios 将变量传递给Objective-C中导航控制器中嵌入的View控制器
我在导航控制器中嵌入了目标viewcontroller,现在无法向其传递变量 我的代码是:Ios 将变量传递给Objective-C中导航控制器中嵌入的View控制器,ios,uiviewcontroller,parameter-passing,Ios,Uiviewcontroller,Parameter Passing,我在导航控制器中嵌入了目标viewcontroller,现在无法向其传递变量 我的代码是: UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"Main" bundle:nil]; //THis is the navigation controller UIViewController *destVC = [storyboard instantiateViewControllerWithIdentifier
UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"Main" bundle:nil];
//THis is the navigation controller
UIViewController *destVC = [storyboard instantiateViewControllerWithIdentifier:@"myNav"];
//This is the view controller embedded in the nav
IDNowVC* myVC = [storyboard instantiateViewControllerWithIdentifier:@"myVC"];
myVC.sender = @1;//for contacts
[self presentViewController:destVC animated:YES completion:nil];
VC启动后,sender属性为零。它没有得到@1的值
我错过了什么
谢谢您的建议。在您的代码中,您有一条注释,上面写着: //这是嵌入在导航中的视图控制器 但是,该注释下方的视图控制器不是嵌入在导航控制器中的视图控制器。这是一个全新的控制器,在该行创建,并在函数结束时处理 你需要更像这样的东西:
UINavigationController *destVC = (UINavigationController *)[storyboard instantiateViewControllerWithIdentifier:@"myNav"];
IDNowVC* myVC = destVC.childViewControllers[0];
myVC.sender = @1;
上述内容可能存在一些语法问题…是。就这样。我想您也可以从故事板实例化myVC,然后使用[[UINavigationController alloc]initWithRootViewController:myVC]从myNav获取nav;并启动myNav。你只是不能从故事板中实例化这两个,并期望它们相互连接。如果您从故事板实例化myVC,那么它将不会连接到UINavigationController。