嵌入 UIViewController 比向 UIViewController 添加子视图更好(以编程方式)

Posted

技术标签:

【中文标题】嵌入 UIViewController 比向 UIViewController 添加子视图更好(以编程方式)【英文标题】:Is embedding a UIViewController better than adding a subview to a UIViewController (programmatically) 【发布时间】:2021-01-11 11:04:17 【问题描述】:

在另一个view controller 的视图中添加viewcontroller 的视图和像这样嵌入视图控制器有什么区别:

 addChildViewController(controller)

 self.view.addSubview(controller.view)
 controller.view.frame = view.bounds
 controller.view.autoresizingMask = [.flexibleWidth, .flexibleHeight]

 controller.didMove(toParentViewController: self)

【问题讨论】:

【参考方案1】:

嵌入视图控制器(视图控制器包含)具有额外的好处,例如对viewDidAppearviewDidDisappear 的调用以及将旋转和调整大小的事件传递给视图控制器以进行处理。当您直接添加视图时,这些不会发生。

【讨论】:

谢谢,您知道是否可以在集合视图标题中嵌入视图控制器?

以上是关于嵌入 UIViewController 比向 UIViewController 添加子视图更好(以编程方式)的主要内容,如果未能解决你的问题,请参考以下文章

如何在嵌入 UIViewController 的 UITableView 中直观地创建和使用静态单元格

UINavigationViewController 控件 UIContainerView 嵌入 segue

iOS8 中的 UIViewController 自动布局

在现有的 UINavigationController 中插入 UIViewController

以编程方式嵌入 UIViewController?

在另一个中“嵌入” UIViewController