Ios XCode 5使用prepareforsegue调用类
我有一个在容器视图中的tableview。当用户选择任何一行时,将在父控制器中调用一个方法,该方法告诉父控制器执行segue。然而,我无法理解为什么它不起作用。该代码从tableView中的didSelectRow函数调用。该方法确实执行,但它给了我一个错误,即没有带有该标识符的segue 但是,当我从父视图控制器中调用该方法(listJobsOfSite)时,它会工作 (表视图) 父视图控制器Ios XCode 5使用prepareforsegue调用类,ios,Ios,我有一个在容器视图中的tableview。当用户选择任何一行时,将在父控制器中调用一个方法,该方法告诉父控制器执行segue。然而,我无法理解为什么它不起作用。该代码从tableView中的didSelectRow函数调用。该方法确实执行,但它给了我一个错误,即没有带有该标识符的segue 但是,当我从父视图控制器中调用该方法(listJobsOfSite)时,它会工作 (表视图) 父视图控制器 -(void)listJobsOfSite:(NSString *)site { [self
-(void)listJobsOfSite:(NSString *)site
{
[self performSegueWithIdentifier:@"JobSegue2" sender:nil];
}
编辑:
该段位于视图控制器1和视图控制器2之间。视图控制器1持有一个容器视图,该容器视图再次持有一个表视图控制器。此tableview控制器应告诉视图控制器1切换到视图控制器2 编辑2: 截图
编辑:刚刚注意到您的容器视图中有一个导航控制器,所以我上面的建议可能会将视图控制器2推到容器视图中。我完全被你想做的事弄糊涂了 在什么和什么之间是
序列
?我猜它是在父视图控制器和下一个视图控制器之间,而您尝试通过子控制器和下一个视图控制器来实现它。我将告诉父级它需要执行segue。segue位于视图控制器1和视图控制器2之间。视图控制器一拥有一个容器视图,容器视图又拥有一个表视图控制器。此tableview控制器应告诉视图控制器1转换为视图控制器2.1。是的,谢谢你澄清。我会编辑我的帖子。2-是的,标识符在那里。从父视图控制器中调用该方法可以工作,但不能从子表视图控制器中调用它。是否有任何理由在父视图控制器中使用segue代码?我真的不明白你设计这个的方式,也不明白你为什么需要从家长那里调用segue。看起来你想从TableView切换到另一个视图,所以segue方法应该在你的TableViewController中。我一开始确实尝试过。以下程序因相同错误而崩溃。我知道赛格在那里(void)viewDidLoad{self.jobVC=[[JobViewController alloc]init];}-(void)tableView:(UITableView*)tableView didSelectRowAtIndexPath:(NSIndexPath*)indexPath[self.jobVC PerformsgueWithIdentifier:@“JobSegue2”发送方:Nil];}
-(void)listJobsOfSite:(NSString *)site
{
[self performSegueWithIdentifier:@"JobSegue2" sender:nil];
}