【发布时间】:2013-08-04 14:47:29
【问题描述】:
基本上,我使用 prepareForSegue 方法转换到情节提要中的另一个视图,我的视图必须嵌入到导航控制器中才能显示导航栏,因此我以这种方式传递变量:
-(void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender{
if([segue.identifier isEqualToString:@"exploreAddSelected"]){
UINavigationController *navController = (UINavigationController *)segue.destinationViewController;
AddTableViewController *controller = (AddTableViewController *)navController.topViewController;
controller.tagName = tagName;
}
}
我的问题是,当使用 prepareForSegue 方法时,我需要能够在实际的视图控制器中设置一些方法值,就像使用 pushViewController 时一样,如下所示:
DetailViewController *detailViewController = [self.storyboard instantiateViewControllerWithIdentifier:@"DetailViewController"];
detailViewController.tagName = tagName;
[detailViewController setCurrentHashtag:nil];
[navigationController pushViewController:self.detailViewController animated:YES];
我需要能够设置“setCurrentHashtag”方法,该方法在“exploreAddSelected”转到的视图控制器中声明。我该怎么做?
【问题讨论】:
-
我听不懂。你不是已经在
controller.tagName = tagName;这样做了吗?为什么不以controller setCurrentHashtag:nil];为例? -
这实际上不起作用,但 controller.taganame 完全不同。
标签: ios objective-c variables uistoryboardsegue pushviewcontroller