【问题标题】:iOS Swift game wrong orientationiOS Swift 游戏方向错误
【发布时间】:2014-09-24 15:10:55
【问题描述】:

我正在尝试制作只能纵向播放的 iOS 游戏(Swift、SpriteKit)。我遇到的问题是,即使应用程序以纵向加载并且无法旋转,根据帧大小,我的应用程序认为它是横向的。所以应用是纵向的,但我得到“高度:768,宽度:1024”。

这是我在我的应用中的常用轮换代码:

override func shouldAutorotate() -> Bool {
    return false
}

override func supportedInterfaceOrientations() -> Int {
    return Int(UIInterfaceOrientationMask.Portrait.toRaw())
}

应用程序中要求设备方向的每个地方我都放在 Portrait 上(Info.plist 文件、Main.storyboard 等...)。我在谷歌上搜索了这个并找到了大约一年前的一些解决方案,您使用“viewWillLayoutSubviews()”而不是通常的“viewDidLoad”方法,但它不起作用。

还有其他人有这个问题吗?谁能告诉我如何解决它?

【问题讨论】:

  • 选择你的项目的目标,只检查纵向选项和内部故事板打开文件检查器并取消选中使用大小类选项,现在你的游戏应该有 iphone 屏幕大小并且你的游戏应该以纵向运行
  • 不,不是这样。它仍然打印出宽度为1024,高度为768
  • 这里有一篇相关的帖子值得一看:stackoverflow.com/questions/24219616/…

标签: ios swift orientation screen-orientation


【解决方案1】:

好的,我发现出了什么问题。 GameScene.sks 文件中的场景大小需要设置为纵向分辨率,然后需要保存(cmd+S)。如果您不保存它而只是构建它,则文件中的屏幕尺寸将显示您输入的纵向分辨率,但它会记住以前的分辨率并仍然充当横向应用程序,即使设备方向是纵向的.

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-12-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多