以编程方式切换MVC视图控制器 - iOS

dbo*_*ski 5 model-view-controller view uiviewcontroller ios

如何以编程方式在iOS中切换视图控制器?

因此,例如 - 我有一个菜单设置MVC,现在我点击"帮助"如何编程手这一关,以帮助视图控制器加载MVC的设置?

Jay*_*Jay 5

这是基于视图或基于导航的应用程序吗?

对于基于导航的应用程序,AppDelegate应该为您提供对共享UINavigationController的访问,您可以使用它来推送/弹出UIViewControllers

[self.navController pushViewController:helpViewController animated:YES]
Run Code Online (Sandbox Code Playgroud)

然后,当用户想要离开帮助视图并返回主屏幕时,您可以将其弹出.此功能由UINavigationBar中的左/后按钮自动提供,但您可以使用popViewcontrollerAnimated选择器手动触发它:

[self.navController popViewControllerAnimated:YES]
Run Code Online (Sandbox Code Playgroud)

对于基于视图的应用程序,您可以通过操作子视图在屏幕之间移动

[window addSubview:helpViewController.view]
Run Code Online (Sandbox Code Playgroud)

  • 虽然基于导航的评论是值得的,但是通过使用以下方法打开自己的问题世界:`[window addSubview:helpViewController.view]`.我不会讨论这个问题 - [这里] [http://blog.carbonfive.com/2011/03/09/abusing-uiviewcontrollers/]已全部报道. (2认同)