iOs - 使用容器,表视图和详细视图 - 如何在容器内保留详细视图

时间:2013-12-09 10:35:49

标签: ios iphone uitableview storyboard containers

我正在尝试创建一个非常简单的应用程序,虽然我已经坚持了几天相同的问题... 我正在使用故事板,我目前的设置如下: storyboard

我的目标是将“项目视图控制器”中的所有内容保持不变,除了容器内发生的事情。 “评论表视图”在我的容器中显示正常,但是当在表格视图中点击一个单元格时,“评论显示视图”覆盖整个屏幕(请注意,在故事板中,它正确地继承了大小)。 这就是我的“prepareForSegue”的样子(我试图将实例的大小修改为tableview大小):

-(void) prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender{

if ([[segue identifier] isEqualToString:@"showComment"] ){
    CommentShowViewController *csvc = [segue destinationViewController];

    [[csvc view] setFrame:CGRectMake(self.view.frame.origin.x, self.view.frame.origin.y, self.view.frame.size.width, self.view.frame.size.height)];

    NSIndexPath *path = [commentsTable indexPathForSelectedRow];
    Comment *c = [aCommentsList objectAtIndex:[path row]];
    [csvc setCurrent:c];

}
}

任何想法如何使我的工作?

谢谢, 乔纳森

1 个答案:

答案 0 :(得分:0)

我认为问题在于推动segue。推送segues需要执行UINavigationController。我想你的图片左侧有一个UINavigationController未显示。当执行segue时,这是用于segue的UINavigationController

此问题的一个解决方法是在UINavigationControllerProjectViewController之间添加另一个CommentsTableView

容器 - > UINavigationController - > CommentsTableView - > CommentShowViewController。

如果您不希望它显示,请取消选中IB中的“显示导航栏”。