我正在为iOS开发应用程序。
我希望在我的主视图控制器(称为父视图)中的另一个视图中显示一个视图控制器(称为子视图)。 我设法通过添加一个成功嵌入子视图控制器的容器视图来实现这一目的。
在我的子视图控制器中,我有一个按钮可以打开另一个(第三个)视图控制器。
我希望此屏幕在视图容器的范围内打开 - 但它会在全屏幕上打开。
有没有办法可以定义视图容器,使其内部的所有segues都显示在其边界内?
答案 0 :(得分:2)
definesPresentationContext
- UIViewController
的属性,可能会对此有所帮助。
一个布尔值,指示当视图控制器或其后代之一呈现视图控制器时是否覆盖此视图控制器的视图。
https://developer.apple.com/reference/uikit/uiviewcontroller/1621456-definespresentationcontext
将子属性设置为true:
childViewController.definesPresentationContext = true
此外,在呈现viewController(3rd)之前,请设置其模式演示样式:
viewControllerToBePresented.modalPresentationStyle = .overCurrentContext
希望这有帮助!
答案 1 :(得分:0)
试试这篇文章。在边界内添加viewcontrollers可能会有所帮助。