我在TableView中有一组静态单元格,并且这些单元格(A,B,C)中有3个都设置有segue,它们将同一ViewController编码到屏幕上;这样很好!
我想要的是View控制器识别单击了哪个单元格的方法:ViewController可以通过它更改显示的内容。具体来说,我希望将ViewController中的int(例如)根据点击的单元格设置为特定值
我猜我在push
?
任何帮助都非常感谢
以下代码位于“我的视图控制器”中
- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender{
if ([segue.identifier isEqualToString:@"segue1"]){
selectedSegue = 1;
} else {
selectedSegue = 2;
}
NSLog(@"Selected Segue: %d", selectedSegue);
}
selectedSegue始终返回0;否则,返回0。
我也在情节提要中设置了Segue标识符
最佳答案
我想你快到了。检查下面的prepareForSegue:sender:
示例实现(这个方法签名甚至可能是问题!)
#pragma mark - Storyboard Methods
- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender {
if([segue.identifier isEqualToString:@"segueOne"]) {
BBFirstViewController *vcOne = (BBFirstViewController *)segue.destinationViewController;
vcOne.someProperty = @1;
}
else if([segue.identifier isEqualToString:@"segueOne"]) {
BBSecondViewController *vcTwo = (BBSecondViewController *)segue.destinationViewController;
vcTwo.someProperty = @2;
}
}
然后只要确保在故事板文件中每个segue都设置了
identifier
即可:单击两个视图控制器之间的segue线,然后在“属性”检查器中设置标识符。