1

我已经能够找到有关创建从一个表视图到另一个视图的转换的教程。单击单元格时的转换是到相同的目标视图控制器。我想知道如何为 tableview 中的每个单元格转换到不同的视图控制器。我还能用故事板做到这一点吗?如果是这样,怎么做?如果没有,您可以建议哪些替代方案?

故事板已从 tableview 连接到详细视图。但这是我想要完成的:

- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender
{
  if ([[segue identifier] isEqualToString:@"mytransition"]) {

    NSInteger sectionId = [[self.tableView indexPathForSelectedRow] section];
    if (sectionId == 0) {
        NSLog(@"try to change the destination view controller");
        //I don't know if this is possible?!
    } else {
        NSLog(@"Proceed with the original destination view controller");
        //this is ok
    }
  }
}

编辑:我找到了解决方案!你可以在这里查看: http: //forums.macrumors.com/showthread.php?t=1274743

总之,该解决方案涉及对任何感兴趣的人使用 prepareForSegue 和 didSelectRowAtIndexPath 的组合。与其将每个单元格链接到另一个视图,不如创建另一个从控制器到每个所需视图控制器的 segue。然后检查 segue 标识符。

-仁

4

1 回答 1

3

珍是对的。Jen 链接中的解决方案确实有效。

  • segue从表中的原型单元格创建到目标视图控制器。
  • 设置 segue 的标识符。
  • 修改didSelectRowAtIndexPath以获取所选单元格的行号,并使用该单元格performSegueWithIdentifiersegue标识符进行调用。
于 2012-08-07T21:25:01.977 回答