我有一个表格视图与自定义单元格。在单元格上有用标签标识的按钮。 每个按钮都执行一个动作。例如:传递按钮标签来执行segue标识符
-(void)mapa_button_action:(UIButton*)sender
{
NSLog(@"CANCELAR BUTTON CLICKED=%ld",(long)sender.tag);
NSString *employee =[[historialServicios objectAtIndex:sender.tag] valueForKey:@"driverId"];
NSLog(@"EMPLOYEE=%@",employee);
[self performSegueWithIdentifier:@"mapa_conductor_segue" sender:self];
}
正如您所看到的,该按钮由sender.tag属性标识。 在这种情况下,动作执行一个segue,然后执行prepareForSegue方法,我可以将变量传递给新的视图控制器。
- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender {
if ([segue.identifier isEqualToString:@"mapa_conductor_segue"]) {
NSIndexPath *indexPath = [self.tableView indexPathForSelectedRow];
NSLog(@"INDEXPATH=%@",indexPath);
}
}
我需要的是从选定的单元格中检索值到新的视图控制器。 我能够在map_button_action方法中获取值,但我不知道如何将这些值传递给新控制器。
我必须使用performSegueWithIdentifier操作来维护视图控制器结构,我正在使用SWRevealViewControllers。
任何帮助,欢迎。
谢谢你,但实施你的建议,我不需要if行。我只需要声明端视图控制器并将值传递给那里,对吗? – mvasco 2015-03-19 04:53:56
@mvasco,我只是复制你的代码,所以我认为这就是你想要的。你不需要if子句,如果你只有一个segue,但你会如果有多个segues .. – rdelmar 2015-03-19 04:54:54
@rdelmar我只是好奇,你是如何获取'indexPathForSelectedRow' – 2015-03-19 04:59:05