【发布时间】:2017-12-24 18:07:35
【问题描述】:
在 WWDC 2017 SceneKit 会议中,他们建议使用 overlaySKScene 将 SpriteKit 层覆盖在 SceneKit 上用于 HUD 等。在我旋转 iPhone/iPad 之前它似乎工作正常。现在 SpriteKit 中的文本都被拉伸(如果从纵向变为横向)或缩小(如果从横向变为纵向)。无论如何,无论方向如何,都可以使文本或图形保持相同的大小?
sceneView.overlaySKScene = SKScene(size: sceneView.frame.size)
我以非常简单的方式解决了这个问题。只需调整 overlaySKScene 的大小并将所有内容重新定位在
override func viewWillTransition(to size: CGSize, with coordinator: UIViewControllerTransitionCoordinator) {
let width = sceneView.frame.height
let height = sceneView.frame.width
sceneView.overlaySKScene?.size = CGSize(width:width, height:height)
...
}
希望这可以帮助其他面临类似问题的人。
【问题讨论】:
标签: swift sprite-kit scenekit