Ios 从容器视图内的另一个视图控制器加载视图控制器

Ios 从容器视图内的另一个视图控制器加载视图控制器,ios,uiviewcontroller,uikit,Ios,Uiviewcontroller,Uikit,我正在为iOS开发一个应用程序 我希望在主视图控制器(称为父视图)的另一个视图中显示一个视图控制器(称为子视图)。 我通过添加一个容器视图成功地嵌入了子视图控制器来实现这一点 在我的子视图控制器中,我有一个按钮可以打开另一个(第三个)视图控制器 我希望这个屏幕在视图容器的范围内打开,但它是全屏打开的 是否有一种方法可以定义视图容器,使其内部的所有分段都显示在其边界内?definesPresentationContext-UIViewController的一个属性在这里可能会有所帮助 一个布尔值,

我正在为iOS开发一个应用程序

我希望在主视图控制器(称为父视图)的另一个视图中显示一个视图控制器(称为子视图)。 我通过添加一个容器视图成功地嵌入了子视图控制器来实现这一点

在我的子视图控制器中,我有一个按钮可以打开另一个(第三个)视图控制器

我希望这个屏幕在视图容器的范围内打开,但它是全屏打开的


是否有一种方法可以定义视图容器,使其内部的所有分段都显示在其边界内?

definesPresentationContext
-UIViewController的一个属性在这里可能会有所帮助

一个布尔值,指示当视图控制器或其子体之一显示视图控制器时,是否覆盖此视图控制器的视图

将子对象的属性设置为true:

childViewController.definesPresentationContext = true
另外,在显示viewController(第3个)之前,请设置其模式显示样式:

viewControllerToBePresented.modalPresentationStyle = .overCurrentContext

希望这有帮助

试试这个帖子。这可能有助于在边界内添加ViewController


显示代码如何加载第三方控制器可能我不够清楚,但目的是让它在视图容器中打开,而不管加载视图控制器的方式如何(在我的情况下,我使用第三方SDK,无法访问其代码),比如HTML中的iframe