从另一个UIViewController呈现UIViewController的视图

时间:2012-05-21 21:11:35

标签: ios

我有一个棘手的问题。众所周知,Apple明确表示ONE UIViewController应该在特定时间在屏幕上。

但是,如果你想实现一个注册工作流,如果有微小的视图,比如...... 200px的高度,那怎么样?

你可以面对任何真正的问题 ..如果你将UINavigationController(320x200px)作为子视图附加,并推送几个UIViewControllers?。

如果我采用UIView方法,我将需要复制UINavigationController的行为。这不是什么大问题,但需要额外的时间。

此外,UIView不应该有业务逻辑代码。因此,rootViewController将处理整个注册流程。哪个没关系,但我真的很想把它分成几个类。

非常欢迎任何建议。 提前谢谢!

2 个答案:

答案 0 :(得分:3)

您应该查看新容器ViewControllers。来自Apple的文档:

实施容器视图控制器

在iOS 5.0及更高版本中,自定义UIViewController子类也可以充当容器视图控制器。容器视图控制器管理其拥有的其他视图控制器的内容的呈现,也称为其子视图控制器。子视图可以按原样显示,也可以与容器视图控制器拥有的视图一起显示。

另见https://developer.apple.com/videos/wwdc/2011/?id=102

答案 1 :(得分:2)

我建议保留1个视图控制器,然后按下视图。你也可以做一些事情,比如使用TableViewController和你为工作流的每个部分滚动的自定义单元格,滚动视图也可以工作。