故事板不包含标识符为“bSegue”的视图控制器

时间:2013-06-22 22:21:44

标签: iphone uitableview ios6 storyboard

在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标识符是否正确,然后它为什么会出现此错误。

任何想法。

由于

1 个答案:

答案 0 :(得分:1)

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

你的专栏[self.storyboard instantiateViewControllerWithIdentifier:@"bSegue"] 正在故事板中查找Storyboard ID bSegue的视图控制器。

您要做的是调用您使用performSegueWithIdentifier:sender:

创建的segue标识符

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