'推送segues只能在源控制器由UINavigationController实例管理时使用

Bog*_*apu 11 ios

我遇到了这个问题.在我的根视图控制器中,我有一个文本字段和一个按钮.我给出了一个条件,如果我在文本字段中输入0然后只有它应该移动到下一个视图.到这里它正常工作.但现在这里有问题.在这里,我有一个按钮,并为该按钮提供导航到第三个视图控制器.我在这里得到错误

Terminating app due to uncaught exception 'NSGenericException', reason: 'Push segues can only be used when the source controller is managed by an instance of UINavigationController.'
Run Code Online (Sandbox Code Playgroud)

图片参考:http://img12.imageshack.us/img12/8533/myp5.png

我在第一个视图中给按钮操作,如下所示

- (IBAction)Submit:(id)sender {

if([tf.text isEqual:@"0"])
{

    UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"Main"   bundle:nil];

    SecondViewController *vc2 = [storyboard instantiateViewControllerWithIdentifier:@"SecondViewControllerID" ];

    [self presentViewController:vc2 animated:YES completion:NULL];

}  
}
Run Code Online (Sandbox Code Playgroud)

Mut*_*awe 12

去:

编辑器 - >嵌入 - >导航控制器,添加Navigation Controller到您的初始视图


Jon*_*ast 5

查看截图后,您需要

  1. 将您SecondViewController推入现有导航控制器的堆栈,而不是以模态方式呈现它
  2. 您需要将您嵌入SecondViewController另一个导航控制器,然后从您的SamplesViewController以模态方式创建和呈现导航控制器

无论哪种方式,都SecondViewController需要嵌入导航控制器,然后才能使用Push Segues