2014-10-07 32 views
0

我已经在firstviewcontroller str1中声明了一个字符串,我想在第三个控制器中获取该字符串,并在循环中使用它。如何将value从firstviewcontroller传递给xcode中的thirdview控制器?

firstviewcontroller

SecondViewController *secondview=[[SecondViewController alloc]init]; 
secondview.str1=[name objectAtIndex:indexPath.row]; 
[self.navigationController pushViewController:secondview animated:YES]; 

thirdviewcontroller

if([str1 isEqualToString:@"X"]) 
    //&&[str12 isEqualToString:@"hospital"]) 

,但它似乎没有work.pls帮助理清

+0

你展示如何第二控制器被创建,但你怎么去第三个? – 2014-10-07 10:35:38

+0

您正在设置str,并推动secondviewcontroller而不是第三个控制器 – hariszaman 2014-10-07 10:36:19

+0

yes.i想要在第一个视图中获取字符串到第三个视图 – 2014-10-07 10:38:41

回答

0

尝试这样的:

SecondViewController *secondview=[[SecondViewController alloc]]nitWithNibName:@"SecondViewController" bundle:nil]; 
secondView.str1 = @"testString"; 
[self.navigationController pushViewController:secondView animated:YES]; 
0

prepareForSegue方法中,您可以在每个视图控制器上设置@property。您需要使用storyboard ID或将视图控制器设置为强大的@properties。

VC1:

- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender 
{ 
    if (_secondView && _secondView.yourPropertyName) 
     _secondView.yourPropertyName = @"something"; 
} 

VC2:

- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender 
{ 
    if (_thirdView && _thirdView.yourPropertyName) 
     _thirdView.yourPropertyName = self.yourPropertyName; 
} 
+0

谢谢你的回答 – 2014-10-09 08:45:29

+0

如果它对你有效,不要忘了标记为答案;) – brandonscript 2014-10-09 08:46:39

相关问题