如何在故事板中嵌套视图控制器
How to nest a view controller in Storyboard
是否有 Android 中用于 IOS 应用程序片段的替代品?例如,我想创建一个带有侧边栏的视图。所以,我有一个包含 2 个其他视图的容器。现在,我正在以编程方式做所有事情。就像创建 3 个视图控制器:用于容器、侧边栏和主屏幕。我稍后使用 addSubView 方法添加 2,但我想在情节提要中嵌套视图控制器,而不是以编程方式添加视图控制器。我可以以编程方式嵌套视图控制器,但想使用拖放界面来做同样的事情。
我正在使用以下代码添加子视图:
let homeController = HomeController()
homeController.delegate = self
centreController = UINavigationController(rootViewController: homeController)
view.addSubview(centreController!.view)
addChild(centreController!)
centreController?.didMove(toParent: self)
那么,有没有办法使用故事板获得相同的效果?我是 IOS 的新手,所以可能缺少一些常见功能。
UIKit 中最接近的东西可能是容器视图控制器:
来自 Android 开发者文档(片段):
You can think of a fragment as a modular section of an activity, which has its own lifecycle, receives its own input events, and which you can add or remove while the activity is running (sort of like a "sub activity" that you can reuse in different activities).
来自 IOS 开发者文档(容器视图控制器):
Container view controllers promote better encapsulation by separating out your content from how you display that content onscreen. Unlike a content view controller that displays your app’s data, a container view controller displays other view controllers, arranging them onscreen and handling navigation between them.
第 1 步
像普通视图一样从组件选择库中拖动 UIContainerView
。 Xcode 将为其创建一个新的 ViewController。
第 2 步
向容器视图添加普通视图约束,与任何视图组件相同。
第 3 步
将容器视图控制器用作独立容器。
我为您制作了一个演示项目:https://github.com/atapp/ContainerDEMO
是否有 Android 中用于 IOS 应用程序片段的替代品?例如,我想创建一个带有侧边栏的视图。所以,我有一个包含 2 个其他视图的容器。现在,我正在以编程方式做所有事情。就像创建 3 个视图控制器:用于容器、侧边栏和主屏幕。我稍后使用 addSubView 方法添加 2,但我想在情节提要中嵌套视图控制器,而不是以编程方式添加视图控制器。我可以以编程方式嵌套视图控制器,但想使用拖放界面来做同样的事情。
我正在使用以下代码添加子视图:
let homeController = HomeController()
homeController.delegate = self
centreController = UINavigationController(rootViewController: homeController)
view.addSubview(centreController!.view)
addChild(centreController!)
centreController?.didMove(toParent: self)
那么,有没有办法使用故事板获得相同的效果?我是 IOS 的新手,所以可能缺少一些常见功能。
UIKit 中最接近的东西可能是容器视图控制器:
来自 Android 开发者文档(片段):
You can think of a fragment as a modular section of an activity, which has its own lifecycle, receives its own input events, and which you can add or remove while the activity is running (sort of like a "sub activity" that you can reuse in different activities).
来自 IOS 开发者文档(容器视图控制器):
Container view controllers promote better encapsulation by separating out your content from how you display that content onscreen. Unlike a content view controller that displays your app’s data, a container view controller displays other view controllers, arranging them onscreen and handling navigation between them.
第 1 步
像普通视图一样从组件选择库中拖动 UIContainerView
。 Xcode 将为其创建一个新的 ViewController。
第 2 步
向容器视图添加普通视图约束,与任何视图组件相同。
第 3 步
将容器视图控制器用作独立容器。
我为您制作了一个演示项目:https://github.com/atapp/ContainerDEMO