2010-01-22 65 views
0

如何实现iPhone的向导风格界面?iPhone中的向导风格界面

例如,我有一个表单,我想分解成5个不同的页面或视图,而不是将所有信息填入 到一个页面或视图中。

此接口必须得去上一个或下一个的情况下,他们希望 改变第2页上的东西时,他们是4

页面上此接口必须得去3页直接的能力,能力和仍然是 能够上前和下。似乎使用UINavigationController不会 在这里工作,因为意见1和2不在堆栈上,所以prev不会工作。

更新:查看“气体仓库”应用程序。它有我正在寻找的东西。 UITableView介绍您可以填写的项目。选择一行可将您带到详细视图以输入数据,并预览和下一行以填写其他信息。

回答

3

UINavigationController看起来很明显的解决方案。它可以免费为您提供漂亮,熟悉的页面转换,如果您需要跳转到特定页面,则可以在不使用转换动画的情况下设置导航堆栈。

+0

UINavigationController可能会工作,但我想用动画显示第一个视图。例如,如果他们直接查看3,则动画会很好。 – 2010-01-22 19:42:16

+1

您可以为任何视图的转场设置动画。请参阅popToViewController:animated:和setViewControllers:animated :. – Darren 2010-01-22 21:21:41

+0

“gas cubby”应用程序正是我正在寻找的。当你输入一个新条目时,它会显示你可以填写的项目的表格视图,然后显示一个像导航一样的向导来输入细节。问题依然存在,那么最好的实施方式是什么? – 2010-01-22 21:35:36

1

我会说使用导航控制器。在第一个视图中,在表格视图中显示5个选项。用户选择一行,然后将相应的部分作为新的UIViewController压入堆栈。所以,如果他们在观点#3并且想回到观点#1(说实话,我会建议重新考虑现实世界中的某个人是否真的想要这样做),他们打回“然后”从表中选择视图#1。

我想不出一个更好的方法来做到这一点,因为你不会有空间去做一些像面包屑一样的东西,苹果会反对推荐它。您可以使用标签栏,但更像是选项,然后是某种向导工作流程。

+0

直接查看第3号,而如果视图1和2不需要输入,但用户想要在视图3中输入信息,则视图1会发生。如果用户决定输入首先查看3个偏好,然后查看其他视图。我想避免让用户回到主表视图导航到另一个细节视图。 – 2010-01-22 19:40:56

+1

为什么要给他们优先填写#3的第一个呢?比如说,“我不想先填写我的名字,但我非常兴奋地去参加我的地址!”没有发生。只是80/20原则的东西,让每个人都更简单。如果某些字段不是必需的,请告诉他们可以跳过每个表单视图。 – bpapa 2010-01-22 19:52:27

+0

“gas cubby”应用程序正是我正在寻找的。当你输入一个新条目时,它会显示你可以填写的项目的表格视图,然后显示一个像导航一样的向导来输入细节。问题依然存在,那么最好的实施方式是什么? – 2010-01-22 21:34:39

1

如果你真的希望他们能够跳过这个过程,UINavigation控制器和UISegmentedControl组合跳转到各个部分就可以做你想做的事情。您可以将分段的控件嵌入到导航栏中,也可以将其放置在导航栏的下方(这似乎更像您想要的,因为您有五个部分)。

如果Segmented控件不太符合您的口味,只需放置任意一组五个按钮即可更改部分并使其具有视觉吸引力。

1

当您的步骤数量相对较少时,通常使用“向导”UI,其中一个步骤取决于之前的步骤,至少在某些步骤中,结果或演示文稿取决于之前的步骤。这就像导航树,通常会导致使用导航控制器,但每个步骤只有一个潜在分支。我的感觉是,导航UI将是完美的,但有一个例外;导航栏右侧的按钮位于左侧,右侧是导航按钮左侧的“后退”按钮的镜像。该按钮将导航到下一步,并且在每一步显示的页面都将允许用户填写该步骤的信息。唯一的问题是导航到一个步骤,而不是下一个或上一个步骤,这可以通过包含流程中步骤的下拉列表的自定义按钮来更正。这与iPhone UI的其余部分非常吻合,Gas Cubby的向导用户界面(就像它的好)不会。