【发布时间】:2014-04-06 16:25:03
【问题描述】:
我有一个在容器视图中的表视图。当用户选择任何行时,会在父控制器中调用一个方法,该方法告诉父控制器执行 segue。但是,我无法弄清楚为什么它不起作用。代码从 tableView 中的 didSelectRow 函数调用。该方法确实执行了,但它给了我一个关于没有使用该标识符的 segue 的错误。
但是,当我从父视图控制器中调用方法 (listJobsOfSite) 时,它可以工作。
(表格视图)
-(void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
[self.jobVC listJobsOfSite:@"locPwn"];
}
父视图控制器
-(void)listJobsOfSite:(NSString *)site
{
[self performSegueWithIdentifier:@"JobSegue2" sender:nil];
}
编辑: segue 在视图控制器 1 和视图控制器 2 之间。视图控制器 1 持有一个容器视图,它又持有一个表视图控制器。这个 tableview 控制器应该告诉视图控制器 1 进入视图控制器 2。
编辑 2: 截图http://tinypic.com/r/30x7dr9/8
【问题讨论】:
-
segue到底是什么?我猜它在父级和下一个 ViewController 之间,而你尝试通过子控制器和下一个 ViewController 来做。我会告诉父母它需要执行转场。 -
segue 在视图控制器 1 和视图控制器 2 之间。视图控制器一持有一个容器视图,它又持有一个表视图控制器。这个 tableview 控制器应该告诉视图控制器 1 进入视图控制器 2。
标签: ios