Этот код Swift w/SpriteKit не выполняет то, что предполагается

Я очень новичок в разработке Swift и iOS. Я смотрел учебники по разработке iOS с Swift и SpriteKit. После учебников я открыл Xcode, новый проект, игру, универсальный; и все, что я изменил, было GameScene.swift. Вот новый код:

import SpriteKit

class GameScene: SKScene {
    override func didMoveToView(view: SKView) {
        /* Setup your scene here */
        var node1 = SKNode()
        node1.position = CGPoint(x: 100, y: 100)
        self.addChild(node1)

        var spr1 = SKSpriteNode(imageNamed: "Spaceship")
        spr1.position = CGPointZero
        spr1.zPosition = 1
        node1.addChild(spr1)
    }

    override func touchesBegan(touches: NSSet, withEvent event: UIEvent) {
        /* Called when a touch begins */
    }

    override func update(currentTime: CFTimeInterval) {
        /* Called before each frame is rendered */
    }
}

Примечание. Изображение космического корабля предоставляется по умолчанию.

Поэтому в учебниках этот код добавил космический корабль к сцене. Однако, когда я запускаю симулятор, сцена остается пустой. В чем проблема? Если вам нужна дополнительная информация, скажите об этом, и я предоставлю.

+1
источник поделиться
2 ответа

Он может работать правильно, и вы просто не видите его на экране. В зависимости от устройства, которое вы эмулируете, вы можете отображать космический корабль вне экрана. Попробуйте другое, меньшее устройство, чтобы подражать, и проверьте, можете ли вы его увидеть.

+1
источник

Попробуйте войти в свой GameViewController.swift и убедитесь, что вы видите что-то в этом роде:

class GameViewController: UIViewController {
    override func viewDidLoad() {
        super.viewDidLoad()

        if let scene = GameScene(fileNamed:"GameScene") {
            let skView                 = self.view as! SKView
            skView.showsFPS            = true
            skView.showsNodeCount      = true
            skView.ignoresSiblingOrder = true

            scene.scaleMode = .AspectFill
            scene.size      = skView.bounds.size

            skView.presentScene(scene)
        }
    }
}
0
источник

Посмотрите другие вопросы по меткам или Задайте вопрос