2015-06-02 56 views
-3

我尝试此代码,但它对我无效。 谢谢如何在iOS中的不同视图控制器之间传递变量

-(void)passvar:(NSString *)user 
{ 
UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"Main" bundle:nil]; 
UIViewController *viewController = (UIViewController *)[storyboard instantiateViewControllerWithIdentifier:@"signupvc"]; 

viewController.user = user; 

[self presentViewController:viewController animated:YES completion:nil]; 

} 
+0

什么不正确? – Larme

回答

1

UIViewController不具有user财产。 你应该用你的自定义子类,而不是UIVIewController

-(void)passvar:(NSString *)user 
{ 
UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"Main" bundle:nil]; 
MyCustomViewController *viewController = (MyCustomViewController *)[storyboard instantiateViewControllerWithIdentifier:@"signupvc"]; 

viewController.user = user; 

[self presentViewController:viewController animated:YES completion:nil]; 

} 

注意,在这个代码,你从故事板实例化一个新的MyCustomViewController,并提交给用户。它与调用这些代码行之前打开的任何其他View Controller无关。
如果您调用此函数3次,它将打开3个不同的MyCustomViewController

+0

其工作就像一个魅力....非常感谢你 –

+0

不客气!请考虑接受答案,如果它帮助:) –

相关问题