首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在iOS中显示多个视图的最佳实践

在iOS中显示多个视图的最佳实践
EN

Stack Overflow用户
提问于 2011-12-09 14:51:55
回答 4查看 1K关注 0票数 1

我正在尝试建立一个教育应用程序,将有大约3-5完全不同的页面/屏幕。每个屏幕包含一个拼图,并且每个拼图独立于所有其他拼图(屏幕)。一旦解决了当前屏幕上的难题,我想转换到一个新的(随机选择的)屏幕。我会允许相同的拼图显示多次,但是,如果它在需要重置之前就已经显示了。

我尝试过使用segues来实现这一点,但这似乎需要一个UINavigationController,而这不是我想要展示的体验(因为它需要一个预定义的屏幕层次结构)。

我认为最好的方法是让每个屏幕作为完全独立的UIViewControllers,对吗?我只是不确定如何协调它们之间的导航/渲染。

我将感谢您所知道的任何最佳实践。谢谢!

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2011-12-09 15:14:21

好吧,这里有一个可能的选择:

首先,如果你想在这些拼图之外有一个菜单,就把它作为你在UINavigationController中的根视图控制器。

然后创建一个启动器控制器,并在适当的时候将其添加到导航控制器。这将是一个常规的UIViewController,除了在这个控制器中,在viewWillAppear方法中,让它选择一个随机数字0-5,并通过一个开关运行它,并根据这个数字推送5个视图控制器中的一个。然后,当拼图完成时,在导航控制器上调用popViewController。现在,当它弹出时,viewWillAppear将再次被调用,并随机推送另一个。然后,如果您想随时返回主菜单,只需调用popToRootViewControllerAnimated即可。这应该可以满足您的需求。为了使它不再有两次动画效果,或者只有推动画或者只有弹出动画。

票数 2
EN

Stack Overflow用户

发布于 2011-12-09 15:12:29

您可以使用单个控制器,而不是使用不同的视图控制器。您可以在完成第一个任务后重新加载该任务的视图。您为第一个拼图应用的逻辑将与其他拼图相似。所以现在你只需要处理拼图的不同状态。例如:我的第一个视图是3x3矩阵,下一个是4x4矩阵,下一个是5x5矩阵。因此,这种状态需要通过视图控制器中的代码来处理。

票数 0
EN

Stack Overflow用户

发布于 2011-12-09 15:14:10

我知道使用cocos2d是构建游戏的一种很好的方式,它允许不同的“场景”,在这些场景中,事物相互独立,或者如果你愿意,可以进行交流。与cocos2d一样,有一个“导演”来处理所有的场景,并可以为你推送场景。如果你对此很好奇,请访问:www.cocos2d-ihone.org

我希望这能有所帮助:)

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8442052

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档