如何在UIKit中垂直放置两个UIViewController?

时间:2020-08-14 11:54:56

标签: swift uiviewcontroller uikit

我想在UIKit中将两个UIViewController同时放在一个屏幕中。但是,我找不到解决方案。

赞:

enter image description here

我想同时在一个屏幕中同时显示UINavigationController和Admob Banner。一个不会影响另一个。

你能告诉我怎么做吗?

1 个答案:

答案 0 :(得分:1)

您要使用视图控制器包含。最简单的方法如下。

打开情节提要。

添加视图控制器。我们称之为“父母”。给它一个唯一的标识符。

点击“ +”将新组件添加到您的父视图控制器。在“容器”上搜索,然后将2个容器视图拖到您的父视图控制器上。这些容器视图将包含2个视图控制器的内容视图。在这些容器视图上设置约束,以使它们在图片中显示时位于顶部和底部。

接下来,将用于视图控制器1和视图控制器2的视图控制器添加到情节提要中。 (您也可以添加链接以从其他情节提要中查看视图控制器,但我将忽略它。)让我们将它们称为Child1和Child2。

从“父对象”中的每个容器中按住Control键并拖动到要显示在该容器中的子视图控制器上。出现提示时,选择要创建“嵌入的序列”。

嵌入segue告诉您的应用程序,应在加载Parent时加载子视图控制器,并使它们的内容视图成为容器视图的子视图。

在父级中,PrepareForSegue()方法将在每个子视图控制器都已初始化且其视图已准备好加载时触发。那时,您可以将信息传递给子视图控制器,设置委托链接等。(请注意,您不能也不应直接操作子视图控制器的视图层次结构。而是将数据传递给子视图控制器使用这些视图控制器的属性或方法,并让子级的viewDidLoad方法根据需要将数据安装到视图中。