我如何在iOS中以编程方式切换视图控制器?
例如,我有一个菜单MVC设置,现在我点击“帮助”,如何以编程方式将其交给帮助视图控制器来加载该MVC设置?
例如,我有一个菜单MVC设置,现在我点击“帮助”,如何以编程方式将其交给帮助视图控制器来加载该MVC设置?
这是基于View还是Navigation的应用程序?
对于Navigation-based应用程序,您的AppDelegate应该提供访问共享UINavigationController的权限,您可以使用它来推入/弹出UIViewControllers。
[self.navController pushViewController:helpViewController animated:YES]
当用户想要离开帮助视图并返回主屏幕时,您需要将其弹出。这个功能由UINavigationBar中的左/后退按钮自动提供,但您也可以使用popViewcontrollerAnimated选择器手动触发它:
[self.navController popViewControllerAnimated:YES]
对于基于View的应用程序,您可以通过操作子视图来在屏幕之间切换。
[window addSubview:helpViewController.view]
使用实用程序模板应该是最快的解决方案。 您将拥有两个可以神奇地来回切换的视图。
然而,这些可以通过以下步骤实现
在帮助按钮被触摸时,只需调用
[self presentModalViewController:(UIViewController *)modalViewController animated:(BOOL)animated];
HelpViewController 上应该有返回按钮
[self dismissModalViewControllerAnimated:(BOOL)animated]; //call to return back to parent view controller
玩得开心^^
[window addSubview:helpViewController.view]
会让你陷入一系列问题中。我不想再多说了--这里已经涵盖了所有内容(http://blog.carbonfive.com/2011/03/09/abusing-uiviewcontrollers/)。 - GarlicFries