SpriteKit 默认横向

Posted

技术标签:

【中文标题】SpriteKit 默认横向【英文标题】:SpriteKit default landscape orientation 【发布时间】:2016-03-13 19:28:22 【问题描述】:

我正在制作一个可以在两种横向模式下运行的 SpriteKit 游戏。如何选择默认横向?

当我第一次加载游戏时,它会在 LandscapeLeft 中加载(主页按钮在左侧)

查看应用商店中的大多数游戏,默认方向似乎是相反的(横向右侧)。我也更喜欢这样。

我尝试过使用 info.plist,但找不到任何东西。

我也看不到我可以在 viewController 中更改什么,因为我想保持两个横向。

 override func supportedInterfaceOrientations() -> UIInterfaceOrientationMask 
    if UIDevice.currentDevice().userInterfaceIdiom == .Phone 
        return .Landscape
     else 
        return .Landscape
    

有人知道我要做什么吗?

提前致谢

【问题讨论】:

【参考方案1】:

只需更改 info.plist 中 Supported Interface Orientation 键的项目顺序即可。该应用程序将以第一项中指定的任何方向启动。默认情况下,这将是横向左侧。只需将第 1 项(横向)拖动到第 0 项(左侧)的位置:

【讨论】:

呃。非常感谢,我知道那里有东西。【参考方案2】:

您可以通过覆盖在视图控制器中进行设置:

override func preferredInterfaceOrientationForPresentation() -> UIInterfaceOrientation 
    return UIInterfaceOrientation.LandscapeLeft

只需返回游戏视图控制器所需的方向即可。

【讨论】:

感谢您的回答。这仅允许 1 个横向方向,这不是我想要的。 然后返回:UIInterfaceOrientation.LandscapeRight 如果您希望它开始时的样子? 嘿,我仍然希望我的应用程序能够在两个横向方向上运行。我想更改应用启动时的默认方向。再次感谢

以上是关于SpriteKit 默认横向的主要内容,如果未能解决你的问题,请参考以下文章

SpriteKit横向不起作用

横向模式在 spritekit 游戏中无法正常工作

如何防止 SceneKit 中的 SpriteKit 覆盖拉伸?

SpriteKit 中的无限滚动背景

Spritekit 动画加载时间

TVOS 10 SpriteKit 焦点导航默认焦点项目