Ios4 在不使用导航控制器或以模式加载视图的情况下,在UIViewController之间切换的正确方法是什么

Ios4 在不使用导航控制器或以模式加载视图的情况下,在UIViewController之间切换的正确方法是什么,ios4,uiviewcontroller,uinavigationcontroller,uitabbarcontroller,cocos2d-iphone,Ios4,Uiviewcontroller,Uinavigationcontroller,Uitabbarcontroller,Cocos2d Iphone,我正在尝试在不使用导航控制器、选项卡栏控制器等的情况下实现视图切换。目前,我正在使用Cocos2d控制器类替换场景方法来实现这一点。我的应用程序将需要大约40个视图控制器,每个都有几个UIButton,可以将它们带到任何其他视图控制器 例如,视图控制器1可能有一些按钮,可以将您带到视图控制器2 视图控制器2可能有链接到3、4、5、12的按钮 视图控制器4可能需要链接到视图控制器17、5和3 我只读的每个教程和文档都讨论了如何使用导航控制器、选项卡栏或以模式推送视图。这些解决方案都不符合我的特殊要

我正在尝试在不使用导航控制器、选项卡栏控制器等的情况下实现视图切换。目前,我正在使用Cocos2d控制器类替换场景方法来实现这一点。我的应用程序将需要大约40个视图控制器,每个都有几个UIButton,可以将它们带到任何其他视图控制器

例如,视图控制器1可能有一些按钮,可以将您带到视图控制器2 视图控制器2可能有链接到3、4、5、12的按钮 视图控制器4可能需要链接到视图控制器17、5和3

我只读的每个教程和文档都讨论了如何使用导航控制器、选项卡栏或以模式推送视图。这些解决方案都不符合我的特殊要求

Cocos2d有一个“replaceSecene”方法,它完全满足了我的需要,但是混合了我需要的许多UIKit控件使得在Cocos2d中开发整个项目成为一场噩梦


我正在寻找一些东西,我可以让用户点击一个按钮,将指定的视图控制器/视图转换加载到该视图,并从内存中卸载以前的视图控制器。有什么想法吗?

有一个根视图控制器,其中包含视图控制器的引用。还可以在每个视图控制器中弱引用根视图控制器,如在委托模式中。如果其中一个视图控制器要进行视图转换,请向根视图控制器发送消息。让根视图控制器隐藏当前视图并取消隐藏下一个视图,如果需要,可以使用动画

基本上,您实现的视图容器比UINavigationController和uitabarcontroller简单得多。使用tab bar控制器并隐藏tab bar视图可能可以实现同样的效果,但我将实现一个自定义的