【发布时间】:2020-09-15 12:25:13
【问题描述】:
步骤:
- 将导航控制器嵌入到主应用程序的入口点控制器 (ViewController.swift)。
- 设置导航控制器的入口点。
- 在情节提要中添加一个额外的视图控制器并将其链接到 ViewController1.swift 文件。
- 从 ViewController 文件的 IB 操作调用此函数。
func addChildController(childController : UIViewController) {
let navigation = UINavigationController.init(rootViewController: childController)
navigation.view.frame = self.view.frame
navigation.willMove(toParent: self)
self.addChild(navigation)
navigation.beginAppearanceTransition(true, animated: true)
self.view.addSubview(navigation.view)
navigation.endAppearanceTransition()
navigation.didMove(toParent: self)
}
结果: - 导航栏和下面的 UI 之间有额外的空间,这与视图控制器的安全区域相关。
【问题讨论】:
-
为什么您需要为
childController使用另一个UINavigationController? -
这是我程序的一小部分。我正在使用子控制器在其中显示对话。子控制器是我的@emrcftci 的基本控制器
标签: ios swift uinavigationcontroller viewcontroller