我在这里看到了这个主题,但没有一个解决方案点击或对我有用。我有一个UITableViewController,(称之为myUITableViewController )并且要求是这样的,如果用户从myUITableViewController选择前三行之一,他们将被带到theFirstViewController,但如果他们选择了任何三行以上,他们将被带到到第二视图控制器。我使用的情节提要似乎不允许从单个 tableview 单元格中进行多个 segues。但是,我可以直接从myUITableViewController添加多个 segue,但是我正在努力使用正确的 segue 代码并且没有找到合适的解决方案。
问问题
1781 次
1 回答
4
最好的方法是不要直接从 IB 使用 segue,而是tableview:didSelectRowAtIndexPath:
在他们选择表中的一行时使用并手动从代码中调用它们。
您应该设置从 tableview 本身到目的地的 segues,而不是表中的特定元素。
像这样的东西:
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
NSString *identifierOfSegueToCall;
if (indexPath.row < 3) {
identifierOfSegueToCall = @"theFirstViewControllerSegueIdentifier";
} else {
identifierOfSegueToCall = @"theSecondViewControllerSegueIdentifier";
}
[self performSegueWithIdentifier:identifierOfSegueToCall sender:self];
}
于 2012-05-01T22:40:04.453 回答