Ios 为什么SpriteKit没有';你什么也不给我看?

Ios 为什么SpriteKit没有';你什么也不给我看?,ios,swift,sprite-kit,Ios,Swift,Sprite Kit,我刚刚启动了一个项目,并添加了以下代码行: override func didMoveToView(view: SKView) { let myNode = SKNode() myNode.position = CGPoint(x: 250.0, y: 300.0) addChild(myNode) let mySprite = SKSpriteNode(imageNamed: "Spaceship") mySprite.position = CGPoi

我刚刚启动了一个项目,并添加了以下代码行:

override func didMoveToView(view: SKView) {
    let myNode = SKNode()
    myNode.position = CGPoint(x: 250.0, y: 300.0)
    addChild(myNode)

    let mySprite = SKSpriteNode(imageNamed: "Spaceship")
    mySprite.position = CGPoint(x: 0, y: 0)
    mySprite.zPosition = 1
    myNode.addChild(mySprite)

    let myOtherSprite = SKSpriteNode(imageNamed: "Spaceship")
    myOtherSprite.position = CGPoint(x: 50.0, y: 50.0)
    myOtherSprite.zPosition = 2
    myNode.addChild(myOtherSprite)
}

但是精灵不会出现在场景中。这里有什么问题?我检查了我的代码好几次,我认为没有错误。

scene.size=skView.bounds.size
添加到
GameViewController
viewDidLoad
方法中,使其看起来像这样:

override func viewDidLoad() {
    super.viewDidLoad()

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

        /* Sprite Kit applies additional optimizations to improve rendering performance */
        skView.ignoresSiblingOrder = true

        /* Fix Size */
        scene.size = skView.bounds.size

        /* Set the scale mode to scale to fit the window */
        scene.scaleMode = .AspectFill

        skView.presentScene(scene)
    }
}

正如Knight0fDragon在下面指出的,这将影响自动布局的工作方式,因此它可能不适用于所有解决方案。

scene.size=skView.bounds.size
添加到
GameViewController
viewDidLoad
方法中,使其看起来像这样:

override func viewDidLoad() {
    super.viewDidLoad()

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

        /* Sprite Kit applies additional optimizations to improve rendering performance */
        skView.ignoresSiblingOrder = true

        /* Fix Size */
        scene.size = skView.bounds.size

        /* Set the scale mode to scale to fit the window */
        scene.scaleMode = .AspectFill

        skView.presentScene(scene)
    }
}

正如Knight0fDragon在下面指出的,这将影响自动布局的工作方式,因此它可能不适用于所有解决方案。

我启动了一个新的SpriteKit模板,并用您的方法替换默认的
didMoveToView
,宇宙飞船出现了。顺便说一句,
myOtherSprite
的定义中有一个拼写错误,应该是“太空船”。你是在模拟器上运行还是在物理设备上运行?@Orkhan可能你的场景和视图有不同的大小/比例。提示:阅读场景的缩放模式。我启动了一个新的SpriteKit模板,用你的方法替换默认的
didMoveToView
,宇宙飞船出现了。顺便说一句,
myOtherSprite
的定义中有一个拼写错误,应该是“太空船”。你是在模拟器上运行还是在物理设备上运行?@Orkhan可能你的场景和视图有不同的大小/比例。提示:阅读有关场景缩放模式的内容。这会因为自动布局而增加,如果项目中的所有内容都是默认的,则场景大小将始终为600x600,以避免自动约束发生,我相信默认情况下场景大小相同,但不是100%确定,而且现在没有打开XCode来测试这会因为自动布局而增加,如果项目中的所有内容都是默认的,那么场景大小将始终为600x600,以避免自动约束发生,我相信默认情况下场景大小是相同的,但不是100%确定,而且现在没有XCode进行测试