我有一个包含UITableView的UIViewController。表视图包含自定义UITableViewCell。自定义单元格是在界面构建器中构建的,并且具有一个笔尖。在我的主要故事板中,我将segue从自定义表格视图单元格拖动到目标视图控制器。我在prepareForSegue中设置了裸骨必需品,设置了一个断点,但它永远不会被调用。
我不习惯在视图控制器中使用UITableView。我通常使用UITableViewController,但要求使用视图控制器中的表视图。我最初的假设是大多数做事方法几乎相同,但我发现情况并非如此。
我尝试从视图控制器本身设置segue并使用didSelectRowAtIndexPath,虽然它有效,但是到目标视图控制器的转换是不稳定的。
任何人都可以提出我可能会遗漏的内容,以便使prepareForSegue方法解雇吗?
-(void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender{
GaugeViewController *destination = [segue destinationViewController];
[destination setGaugeID:@"1"];
}
谢谢!
答案 0 :(得分:-1)
您需要在Storyboard中引用segue的标识,如下所示:
-(void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender{
GaugeViewController *destination = segue.destinationViewController;
if([segue.identifier isEqualToString:@"yourSegue"]) {
NSLog(@"prepareForSegue called");
[destination setGaugeID:@"1"];
}else {
// do something else
}
}
另外,不要忘记在故事板中设置标识符。
请记住,push segues与导航控制器一起使用,模态segue可以从视图控制器拖动到视图控制器。