【问题标题】:iOS - UIViewControllers sharing a screeniOS - UIViewControllers 共享一个屏幕
【发布时间】:2013-04-18 16:22:20
【问题描述】:

我正在编写一个包含两个这样的部分的应用程序:

我的想法是在上半部分创建请求,在底部显示结果。随着我的UIViewController 子类不断增长,我认为将其分成两个UIViewControllers 可能是个好主意。 (所以我想要做的是类似于UISplitViewController)。

虽然我知道可以通过编程方式将UIViewControllers 都放在界面生成器的屏幕上,这样我就可以在那里管理自动布局和设计。拖放在那里不起作用。

这可能吗?更重要的是 - 这是一个好的设计还是我应该坚持“一个屏幕一个视图控制器”的规则?

【问题讨论】:

  • 您的目标是什么版本的 iOS?
  • 仅限 iOS 6。感谢您的提问 - 这很重要

标签: ios uiviewcontroller interface-builder


【解决方案1】:

您可以使用自定义容器视图控制器来实现您想要的。见:

简而言之,从 iOS 5 开始,您不再需要一个视图控制器。只要确保您拨打了必要的收容相关电话即可。而 iOS 6 让使用“容器视图”对象为自定义容器设计故事板变得更加容易。

【讨论】:

    【解决方案2】:

    Apple 已经声明(WWDC 2012,视图控制器的演变,我认为)“screenful”不再合适。视图控制器应该管理一个独立的功能块。

    从 iOS5 开始,您可以使用视图控制器包含(addChildViewController: 等)组成多个视图控制器的界面。从 iOS6 开始,您可以在界面构建器中使用容器和包含 segues 来执行此操作。

    你当然需要一个视图控制器来保存你的两个子视图控制器——这个保存一屏内容,并且通常会在两个孩子之间进行任何协调。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2023-03-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-10-18
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多