使用未声明的types“UIContainerView”

我正在使用xcode 7,我有一个UIContainerView的故事板控制器

当我试图创build一个出口到控制器有这个错误“使用未声明的typesUIContainerView

这不是xcode 7的错误,因为在xcode 6上有相同的错误

我需要创build一个sockets,因为当我切换分段的控制我必须以编程方式更改容器的embedded

这是一个错误,或者我不能创build一个容器的出路? 似乎在库中没有叫UIContainerView ,这很奇怪

没有这样的类叫UIContainerView 。 你需要创build一个UIView的出口,并将其连接到你的容器视图。

你可以像下面这样切换容器视图的内容:

 // Property @property (nonatomic, weak) IBOutlet UIView *container; @property (nonatomic, strong) UIViewController *first; @property (nonatomic, strong) UIViewController *second; // Method that removes first vc from view and shows second vc // Assumes first and second properties already initialized - (void)showSecondVC { // Removes first view controller [self.first.view removeFromSuperview]; [self.first willMoveToParentViewController:nil]; [self.first removeFromParentViewController]; // Shows second view controller [self addChildViewController:self.second]; [self.second didMoveToParentViewController:self]; self.second.view.frame = self.container.bounds; [self.container addSubview:self.second.view]; } 

这是令人困惑的,因为IB将它标记为UIContainerView,但它的types实际上只是一个UIView。

在这里输入图像说明


在这里输入图像说明

UIContainerView不是一个类,所以你得到错误。 而是使用UIView。 容器视图实际上是故事板中的一个概念,它允许您执行类似的编程任务:

  1. 初始化第二个视图控制器
  2. 将其添加为子视图控制器
  3. 在容器视图的相同位置添加视图。

当你添加一个容器视图时,上面的所有东西都是自动完成的。 如果你想切换到不同的视图控制器,那么你将创build多个容器视图。 根据UISegmentedController的selectedIndex显示和隐藏容器视图