【发布时间】:2017-07-28 01:20:12
【问题描述】:
我正在开发一个 iOS 应用程序,它允许某人玩两种不同游戏中的一种。
两场比赛都在一组回合中进行。当玩家完成一个回合时,应用程序会转换到显示结果的新场景,然后转换到另一个回合场景或结束游戏场景。
由于应用程序中场景的瞬态特性,像在更传统的应用程序中所做的那样持久化场景几乎没有意义,人们可以返回到之前的场景。
为此,大多数场景导航是通过使用 UINavigationViewController 并简单地调用 setViewControllers(animated:) 提供一个仅包含 UIViewController 的数组来完成的,这非常有效。
我提到该应用程序将允许某人玩两种游戏之一。事实证明,在 iPhone 上,一个游戏最好在纵向模式下玩,而另一个游戏最好在横向模式下玩。我希望能够控制特定UIViewController 在激活时使用的用户界面方向。
我已经尝试使用UINavigationController 的supportedInterfaceOrientations 属性和application(_ application: supportedInterfaceOrientationsFor window:) 的UIApplicationDelegate,并且已经能够使事情适用于标准应用程序。但是,当我尝试使用 setViewControllers(animated:) 将事物应用到我的游戏应用程序的工作方式时,似乎没有调用任何与应用所需用户界面方向相关的方法,并且所有场景都以相同的方向显示。
对于如何让应用程序中的场景以特定的用户界面方向显示,人们有什么建议?
【问题讨论】:
标签: ios iphone xcode-storyboard