0

在 UITableView 的故事板中添加了一个名为 bSegue 的 segue,bSegue Identifier 类名为 abcViewController。

在将其编写为的代码中

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
UIViewController *viewController;
switch (indexPath.row) {
    case PDF: 

        viewController = [self.storyboard instantiateViewControllerWithIdentifier:@"bSegue"];
        break;
            default: 
        viewController = [[UIViewController alloc] init];
} 
[self.navigationController pushViewController:viewController animated:YES];
}

但是当尝试运行应用程序时,它显示错误NSInvalidArgumentException',原因:'Storyboard () 不包含标识符为'bSegue' 的视图控制器

我仔细检查了 segue 标识符是否正确,然后为什么会出现此错误。

有任何想法吗。

谢谢

4

1 回答 1

1

您将视图控制器标识符与 segue 标识符混淆了。

您的线路[self.storyboard instantiateViewControllerWithIdentifier:@"bSegue"] 正在情节提要中寻找具有 的视图Storyboard ID控制器bSegue

您要做的是调用您创建的 segue 标识符performSegueWithIdentifier:sender:

所以看起来像[self performSegueWithIdentifier:@"bSegue" sender:nil];

于 2013-06-22T23:07:58.760 回答