更改受导航控制器

时间:2018-01-08 05:22:18

标签: ios swift xcode

所以我有一个位于一系列视图控制器开头的导航控制器。该系列包含5个视图控制器,但我希望导航控制器仅使用前4个视图控制器。我不确定是否有办法改变视图控制器4和视图控制器5之间的关系,以便视图控制器5和应用程序的其余部分不受导航控制器的影响。

1 个答案:

答案 0 :(得分:1)

  

我不确定是否有办法改变视图控制器4和视图控制器5之间的关系,以便视图控制器5和应用程序的其余部分不受导航控制器的影响。

可以做很多事情:

  • 完全删除导航控制器并使您的"查看控制器5"窗口的根视图控制器。

  • 将导航控制器的视图控制器数组设置为仅包含"视图控制器5的数组。"这将有效地使视图控制器成为导航控制器的根控制器,并且从那里你可以永远不会将另一个控制器推到导航堆栈上。

  • 保持当前关系,但隐藏导航栏并阻止用户返回"查看控制器4."

  • 重新考虑您的用户界面。例如,如果您的前四个视图控制器旨在引导用户完成一些初始问题,登录过程等,那么您可以制作"查看控制器5"应用程序的主视图控制器,并以模态方式显示包含控制器1-4的导航控制器。

其中,我不相信你的实际情况,我相信重新考虑你的用户界面可能是最好的计划。用户通常应该控制您的应用,而不是相反,他们应该不知道为什么他们无法回到他们之前见过的应用的某些部分。此外,破坏用户已经学会期望的行为的不良形式,以及改变用户在一系列视图控制器中导航的能力将是一个很好的例子。但是,使用导航控制器与前四个视图控制器的模态显示应该没问题。