2012-02-07 77 views
0

对于我的新应用程序,我计划使用UINavigationController来推送/弹出其他控制器。关于UINavigationController的想法

这是场景。

应用程序正在运行。通过导航控制器,我推动堆栈中的第一个控制器。用户进行一些选择并触摸按钮。然后导航控制器推动第二个控制器,等等,而用户到达最后一个控制器,这是第六个。从第一个到第五个控制器将永远不会在应用程序中再次使用。

这是正确的方法(使用导航控制器)这种类型的应用程序?

+0

你能否在你的问题中增加更多细节? '控制器不再被使用'是什么意思?这是一次性的配置吗?或者某种“初始偏好”的东西?还是每次运行应用程序时都会选择一个值(但用户一旦到达第六个控制器就永远不会返回)? – Ravi 2012-02-07 19:37:54

+0

我的意思是说,一旦他到达第六个控制器,用户将永远不会回去。 – objlv 2012-02-07 19:41:01

+1

他们可以在他们到达第六控制器之前回去吗?如:“一>二>三>回到二>三”? – 2012-02-07 19:44:11

回答

0

如果一旦他们到达第6个viewController,他们将永远不会回到其他viewController,您可以随时弹出到rootViewController,然后将第6个viewController打开。那样那些其他viewControllers不在navigationController堆栈中。

0

这听起来像你有5个链接的屏幕流,然后你的应用程序的其余部分。

如果是这样,是的,UINavigationController在这里可以正常工作。你会推动这5个屏幕,当它完成时,你会摧毁导航控制器,并用你的应用程序的其余部分替换为一些视图。

所以UINavigationController将控制你的应用程序的一部分,但不是你的整个应用程序。

+0

实际上,第五个控制器收集以前控制器的所有数据。第五个控制器中有一个按钮,用于推动第六个视图。 如果用户在第六个视图中摇动设备,则应再次加载第五个视图。然后用户可以更改一些值,并再次加载第六个视图等。 – objlv 2012-02-07 19:57:01

1

我不完全确定你的意思,但我想你需要步行1到5步,然后当他们在6完成,他们不能回去。那是对的吗?

我做了类似的事情。我所做的是以模态方式弹出视图1-6(并从1导航到6)以中断当前流程,并且一旦用户完成,该值将传回到您从(委派)中填充模态视图的视图,然后你接下来做任何事情。

不知道如果我回答你的问题。希望能帮助到你。