是否可以在UINavigationController中拥有UINavigationController?我遇到了问题并阅读了相互矛盾的报道:
iPhone UINavigationController inside UIViewController
App with nested UINavigationController crashes in iOS SDK 4.2
该应用程序包含两个2-3步子工作流程,我需要在主工作流程中的不同位置重复使用,因此嵌套。我可以拥有一个主UINavigation控制器,其中包含许多工作流逻辑,但我更喜欢将它们建模为独立的子工作流。
附注 - 如果我使用presentModalViewController启动子工作流程(因为这对所有UIViews都有效),它会起作用,但是当我使用pushViewController启动时,它只显示标题栏而不显示视图。我不想要它模态,因为它掩盖了整个屏幕。
答案 0 :(得分:4)
我不知道是否可能(即有一种方法可以破解它以使其有效)但当然不建议使用多个UINavigationController。如果您认为这是必要的,我会质疑应用程序设计,因为它不仅在实现中复杂,而且对您的用户来说都很复杂。
封装的方法是让您的主UI使用单个UINavigationController。当用户执行分支到其自己的逻辑流程的操作时,将新的导航控制器作为模态视图控制器呈现,并让用户完成该逻辑流程,并在完成主UI时关闭模式。