Я хочу сделать мою игру полноэкранной, а не с черными полосами с обеих сторон и снизу.поэтому я нашел этот код для этого, и он работает для сцены, и теперь он на весь экран, но ресурсы расположены неправильно.Из-за того, что координаты вида разные (не знаю, почему, может быть, из-за того, что ранее я пытался установить все для safeAreaLayoutGuide
, но затем я получаю черные полосы).Так есть ли способ установить его обратно на 0,5 0,5.В противном случае мне придется вернуть anchorPoint
сцены к тому, что когда-либо было anchorPoint
представления и установить все активы в моем файле sks в соответствии с этим.
Вот код из GameViewController
:
class GameViewController: UIViewController {
override func viewWillLayoutSubviews() {
super.viewWillLayoutSubviews()
if let view = self.view as! SKView? {
view.ignoresSiblingOrder = true
view.showsFPS = true
view.showsNodeCount = true
let scene = HomeScene(size: view.bounds.size)
scene.scaleMode = .aspectFill
view.presentScene(scene)
}
}
override func viewDidLoad() {
super.viewDidLoad()
print("---")
print("∙ \(type(of: self))")
print("---")
}
}
этот код из HomeScene
:
let rectangle1 = SKShapeNode(rect: (self.view?.bounds)!)
rectangle1.strokeColor = .white
rectangle1.lineWidth = 20
addChild(rectangle1)
// Set (0, 0) as the centre of the screen
scene?.anchorPoint = CGPoint(x: 0.5, y: 0.5)
let rectangle = SKShapeNode(rect: self.frame)
rectangle.strokeColor = .green
rectangle.lineWidth = 20
addChild(rectangle)
Вот как выглядит сцена на 0,5, 0,5, но вид выше, что зеленый - это сцена, а белый - это вид и кнопка всередина обзора:
Спасибо.