【问题标题】:Should I embed a view controller's view within a new view?我应该在新视图中嵌入视图控制器的视图吗?
【发布时间】:2019-02-05 20:58:36
【问题描述】:

当向 Storyboard 中的现有视图控制器添加外部视图控制器时,您将使用“容器视图”。以编程方式添加一个时,您可以选择创建一个新的 UIView 以将外部 VC 的视图嵌入其中(复制容器视图),或者只是将外部 VC 的 .view 直接添加到现有的视图中。

以编程方式执行此操作时,这里认为哪种做法更好?一种对性能或可靠性的影响是否与另一种不同?

【问题讨论】:

    标签: ios swift cocoa-touch uikit


    【解决方案1】:

    在 Storyboard 中使用容器视图可自动执行以下过程:

    • 实例化视图控制器
    • 添加为 childViewController
    • 将其视图添加为容器视图的子视图(即主视图的子视图)

    通过代码添加子视图控制器是同一个过程:

    • 实例化视图控制器
    • 添加为 childViewController
    • 将其视图添加为当前视图的子视图,作为当前视图的另一个子视图的子视图

    在 Storyboard 中使用容器视图的另一个好处是您可以获得可视化设计界面。

    当然,有些人不喜欢 Storyboard / IB,而更喜欢纯代码方法。

    真的,无论哪种方法最适合您的需求和开发风格。

    【讨论】:

    • 您对通过情节提要添加容器视图时发生的情况的解释正是我想要的。非常感谢。
    猜你喜欢
    • 2022-10-17
    • 2017-12-13
    • 2013-07-04
    • 1970-01-01
    • 2015-04-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多