【发布时间】:2010-06-02 20:34:16
【问题描述】:
我需要在 iPad 应用程序中表示一个线性过程(思考向导)。
原则上,我可以使用 UINavigationController 并为流程的每个步骤不断推送新的控制器。但这似乎相当低效,因为我正在建模的过程没有向后导航的概念,因此所有以前的视图都会毫无意义地停留并耗尽资源。
目前,我一直在向一个“主”视图控制器添加和删除子视图,并且基本上换出了内容。这可行,但感觉相当笨拙,我希望有更好的方法来实现这一点。
此外,视图之间还需要有动画过渡。 (我现在通过 beginAnimations / commitAnimations 进行这项工作)
更新:
为了澄清我的问题:我知道向导通常有一个后退按钮。这不是我在这里建造的。
必须显示的过程可能有很多步骤(在某些情况下可能高达 30-40 左右),所以我真的不想让 39 个过时的视图控制器占用 ram。
【问题讨论】:
-
即使是桌面上的向导设计也允许您在堆栈中向后导航,因此您的设计特别不标准。如果您认为您的用户可能希望能够“返回”导航,那么您应该重新设计。
-
我正在构建的不是我仅用于解释目的的向导。在这个过程中绝对没有向后导航,这是应用程序的核心设计标准之一
标签: iphone cocoa uikit ipad viewcontroller