我的viewControllers是这样的:
startViewController ------> menuViewController
\
\ ------> ImportantViewController
从startMenu
我推menuView
然后我再次推送importantView
,因为我已将importantView
作为我的rootViewcontroller使其成为我的父视图,如下所示:
UINavigationController *navControl = [[UINavigationController alloc] initWithRootViewController: vc];
[self presentModalViewController: navControl animated: YES];
从那个推出importantView
之后的视图:
[self.navigationController pushViewController:vc animated:YES];
现在我的疑问是这样的:
ImportantVIew
当rootView
推到menuView
推送到ViewA
然后推送到View B,然后选择是返回menuView
还是返回{{ 1}}。
我的问题是:
我想将ViewA
作为rootView,然后当我转到ViewB
时,它会将其返回为ImportantView
。有可能有2个rootView吗?或者我需要互相替换?
非常感谢帮助。谢谢。
答案 0 :(得分:1)
始终更改根视图控制器的原因是什么?
使用viewA和viewB调用圆圈,您将构建一个无限的视图控制器堆栈。这可能不是你想要做的。
退后一步,重新思考你想要实现的目标。你只想在viewA和viewB之间进行更改吗?在这种情况下,你应该采用与通常的pushViewController不同的架构/模式。阅读一些关于removeFromParentViewController或transitionFromViewController:toViewController:。或熟悉自己操纵视图控制器链。这些东西可能有助于实现您想要创建的用户体验,而无需构建无限堆栈的视图控制器。