SKView 不覆盖整个屏幕区域
SKView does not cover the entire screen area
我最近开始学习SpriteKit,看了一本著名的教科书,马上就出现了一个问题。在所有视频课程中,SKView 覆盖了整个显示区域。我有相反的情况,我不知道如何解决。以下是屏幕截图:
iPhone with notch
classic iPhone
这里是源代码:
GameViewController.swift:
import UIKit
import SpriteKit
class GameViewController: UIViewController {
override func viewDidLoad() {
super.viewDidLoad()
// Set the scale mode to scale to fit the window
let skView = self.view as! SKView
skView.showsFPS = true
skView.showsNodeCount = true
skView.ignoresSiblingOrder = true
let scene = GameScene(size: CGSize(width: 2000, height: 1500))
scene.scaleMode = .aspectFill
// Present the scene
skView.presentScene(scene)
}
override var shouldAutorotate: Bool {
return true
}
override var prefersStatusBarHidden: Bool {
return true
}
}
GameScene.swift:
import SpriteKit
class GameScene: SKScene {
override func didMove(to view: SKView) {
backgroundColor = .brown
}
}
我不知道在 macOS 11 和 Xcode 12 之前是否有人遇到过此类问题,但现在是。
如何在整个屏幕上拉伸 SKView?
将项目的启动屏幕文件设置为“主要”。
我最近开始学习SpriteKit,看了一本著名的教科书,马上就出现了一个问题。在所有视频课程中,SKView 覆盖了整个显示区域。我有相反的情况,我不知道如何解决。以下是屏幕截图:
iPhone with notch
classic iPhone
这里是源代码:
GameViewController.swift:
import UIKit
import SpriteKit
class GameViewController: UIViewController {
override func viewDidLoad() {
super.viewDidLoad()
// Set the scale mode to scale to fit the window
let skView = self.view as! SKView
skView.showsFPS = true
skView.showsNodeCount = true
skView.ignoresSiblingOrder = true
let scene = GameScene(size: CGSize(width: 2000, height: 1500))
scene.scaleMode = .aspectFill
// Present the scene
skView.presentScene(scene)
}
override var shouldAutorotate: Bool {
return true
}
override var prefersStatusBarHidden: Bool {
return true
}
}
GameScene.swift:
import SpriteKit
class GameScene: SKScene {
override func didMove(to view: SKView) {
backgroundColor = .brown
}
}
我不知道在 macOS 11 和 Xcode 12 之前是否有人遇到过此类问题,但现在是。 如何在整个屏幕上拉伸 SKView?
将项目的启动屏幕文件设置为“主要”。