我有以下问题:只有在UITableViewCellSelectionStyleNone为真时才会执行segue。
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
UITableViewCell *cell = [tableView cellForRowAtIndexPath:indexPath];
if (cell.selectionStyle == UITableViewCellSelectionStyleNone) {
[self performSegueWithIdentifier:@"Update" sender:indexPath];{
}
}
}
- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender
{
if ([[segue identifier] isEqualToString:@"Update"]) {
NSManagedObject *selected = [self.travelA objectAtIndex:[[self.tableView indexPathForSelectedRow] row]];
TravelVC *destViewController = segue.destinationViewController;
destViewController.travel = selected;
destViewController.positionString = _positionStringA;
}
}
但这不起作用。如果单元格选择样式不是UITableViewCellSelectionStyleNone,也将执行segue。也许有办法将这两种方法结合起来。
提前致谢。
答案 0 :(得分:1)
您不应该将您的逻辑基于UITableViewCellSelectionStyleNone
的单元格设置。相反,您应该使用indexPath
来询问您的模型,并找出该项目的选择是否可用/合理。