【问题标题】:Multiple child view controllers inside a uicontainerview (container view)uicontainerview(容器视图)内的多个子视图控制器
【发布时间】:2015-09-17 07:42:33
【问题描述】:

我想知道如何嵌入多个视图控制器作为容器的子控制器。我尝试遵循一些在线教程,但它们都只使用 2 个控制器,而不是多个。我试图将他们的代码转换为使用超过 2 个但没有成功。那是问题1。

我发现这个很棒的 repo 包含用于嵌入 2 个视图控制器的非常简单易懂的代码:https://github.com/mluton/EmbeddedSwapping

我尝试将其转换为 3,但没有任何运气。

问题 #2 是使用这种方法我无法从一个子视图控制器导航到另一个子视图控制器。我克隆了项目并尝试在子视图控制器上放置按钮,然后按 cntrl-drag 到下一个子视图控制器以创建一个 segue,就像通常所做的那样,但是当点击按钮时不会发生导航。


我想要在我的项目中做的是在容器视图中显示一个视图控制器(开始屏幕)。我在这个视图控制器(开始屏幕)上有一个按钮,它与步骤 2 视图控制器有一个连接。我希望 Step 2 View Controller 显示在与 Start Screen 相同的容器中。然后有一个来自第 2 步的按钮转到第 3 步,我希望它再次显示在同一个容器视图中。

网上有没有我可以研究的代码示例?和/或您是否碰巧知道自己和可以分享的方式?我已经在这3天了,我能想到的任何方法都没有奏效。

【问题讨论】:

    标签: ios objective-c segue embedding uicontainerview


    【解决方案1】:

    虽然您想要做的事情可能会很痛苦,但 ChildViewControllers 是一对一的关系。如果您想要更多,则必须添加一个连接到所有视图的中间视图。这个中间视图将是与您的 containerviewController 的一对一关系。

    但是,根据您的描述,我认为您可以通过更简单的方式解决此问题。您描述的流程是典型的导航流程。添加一个 UINavigationController 并将其连接到您的 ContainerView,然后像使用普通导航流一样构建您的导航堆栈。

    【讨论】:

    • 谢谢!我不知道我可以在里面嵌套一个导航控制器......尝试了 3 个晚上,你在 3 秒内修复了它:D
    猜你喜欢
    • 2016-09-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-06-12
    • 2017-12-13
    • 1970-01-01
    • 1970-01-01
    • 2017-09-17
    相关资源
    最近更新 更多