iOS无法在主细节APP中找到segue

时间:2014-01-12 03:51:12

标签: ios segue

我有一个带有Xcode5,SDK 7.0的mster详细应用程序,使用故事板。

以下是故事板的一部分: enter image description here

master是一个标签栏控制器,它有两个标签,我想将视图推送到其中一个。 所以我按住Ctrl +从导航控制器拖动到我的新视图控制器(上图中的“添加类别视图控制器”)

导航控制器的根视图控制器有一个按钮,按钮操作是:

- (IBAction)addBtnPressed:(id)sender {
    [self.navigationController performSegueWithIdentifier:@"toAddCetegory" sender:self];
}

这将是一个例外:

Terminating app due to uncaught exception 'NSGenericException', reason: 'Could not find a navigation controller for segue 'toAddCetegory'. Push segues can only be used when the source controller is managed by an instance of UINavigationController.'

但是,如果我将此Button操作代码更改为:

- (IBAction)addBtnPressed:(id)sender {
    AddCategoryViewController *addVC = [self.storyboard instantiateViewControllerWithIdentifier:@"addCategoryView"];
    [self.navigationController pushViewController:addVC animated:YES];
}

它可以正常工作,点击按钮时会显示新视图。

我想知道我在赛格的方式有什么问题?

任何帮助表示赞赏!

1 个答案:

答案 0 :(得分:1)

您正在从导航控制器的根视图控制器执行push segue(在您的代码中),但您已将push segue连接到导航控制器而不是连接到根视图控制器(在故事板中)。 尝试将push segue连接到根视图控制器,这将起作用。