Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/119.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 将变量传递给Objective-C中导航控制器中嵌入的View控制器_Ios_Uiviewcontroller_Parameter Passing - Fatal编程技术网

Ios 将变量传递给Objective-C中导航控制器中嵌入的View控制器

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

我在导航控制器中嵌入了目标viewcontroller,现在无法向其传递变量

我的代码是:

    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。