我可以以编程方式创建 UIContainerView 吗?

Can I create a UIContainerView programmatically?

我正在尝试创建一个使用 UIContainerView 托管 UIViewController 的动态视图流。需要以编程方式将 UIContainerViews(或 UIViewControllers)添加到 UIView 以允许多个并排。

我一直在四处寻找,但找不到任何可用于创建我的 UIContainerView.

的构造函数

是否有一种简单的方法可以做到这一点,或者它是否违反了创建可重用视图的一般准则?

总而言之,我想实现这样的目标:

var containerView = UIContainerView()
containerView.add(myViewController)

A UIContainerView 只是一种将 viewController 添加为另一个子项并设置其边界的视觉方式。

您可以通过将第二个 viewController 添加为第一个的子级、采用第二个的视图并将其放置在第一个的视图的某个位置来以编程方式执行此操作。

像这样;

childVC = [[SomeViewController alloc] init];

[self addChildViewController:childVC];

[self.view addSubview:childVC.view];

[childVC didMoveToParentViewController:self];