从容器视图中呈现视图控制器

时间:2015-10-24 12:50:31

标签: ios objective-c uiviewcontroller presentviewcontroller

我构建了一个带有容器的UIViewController视图,该视图嵌入了另一个UIViewController(我将其命名为subViewController)。 我希望subViewController在其容器视图画布中呈现其自身的其他实例(不适用于所有屏幕)。

我使用prepareForSegue方法尝试了此操作 用这种方法

-(void)showFurtherReadingDetails
{
    [self performSegueWithIdentifier:@"ShowArticleDetails" sender:self];
}

注意showFurtherReadingDetails方法是subVC over的委托方法,在supperVC中初始化。 但我遇到了这个问题:

  

' NSInternalInconsistencyException',原因:'有意外   容器视图中的子视图。也许嵌入segue已经存在   解雇一次或以编程方式添加子视图?'。

请参阅附件图片enter image description here

1 个答案:

答案 0 :(得分:1)

如果您的UIViewController未嵌入UINavigationController,则无法执行Push。

你需要做的是,用你的subVC嵌入导航控制器,然后从subVC推送新的视图控制器,它将在容器视图中,不会全屏显示。

为方便起见,我附上了故事板的截图,以便您更好地理解。希望它会有所帮助。

enter image description here