当viewcontroller存在子VC时,不显示popover内容视图

时间:2013-01-22 15:37:37

标签: ios objective-c uinavigationcontroller uipopovercontroller

我有一个容器视图控制器,它包含顶部的导航视图和屏幕其余部分的内容视图。导航菜单包含几个按钮,其中一些按钮带有UITableView用于辅助导航的弹出窗口。这一切都有效,直到我分配了一个子视图控制器并将其视图设置为内容视图的子视图。现在,popover出现了,但里面什么都没有(没有tableview,只有黑色)。

这是为什么? 这是我在容器视图中为子vc添加的代码:

- (void)viewDidAppear:(BOOL)animated {
  [super viewDidAppear:animated];
  ContentWebViewController *initialVC = [[ContentWebViewController alloc] init];
  [self addChildViewController:initialVC];
  initialVC.view.frame = self.view.bounds;
  [self.containerView addSubview:initialVC.view];
  self.currentController = initial;
}

请参阅下面的屏幕截图。我添加了一个带有简单webview的vc显示谷歌(现在就像占位符一样)。在我分配孩子VC之前,popover工作正常。

enter image description here

2 个答案:

答案 0 :(得分:0)

也许在其他情况下它会有所帮助 - 如果你正在使用大小类(可能你是因为你正在开发这个到iPad) - 设计任意大小的弹出视图控制器,它应该没问题 - 之后你可以返回你想要的大小。 (您也可以卸载该视图控制器中任何对象的大小类,而不是重新设计VC)

答案 1 :(得分:-2)

我以某种方式(不要问我怎么做)改变了我的表视图控制器继承的类。它应该(显然)是UITableViewController,但是是UITableViewController,因此没有调用initWithStyle ....