我正在尝试制作一个标签,该标签将在游戏启动时显示,但是一旦启动它就会崩溃。错误为“由于未捕获的异常'NSInvalidArgumentException'而终止应用程序,原因:'试图添加已经具有父级的SKNode:名称:'(null)'文本:'TAP ANYWHERE TO START! fontName:'Copperplate'位置:{187.5,333.5}'“。这是我的代码:

let startGameTextNode = SKLabelNode(fontNamed: "Copperplate")

required init?(coder aDecoder: NSCoder) {

    super.init(coder: aDecoder)
}

override init(size: CGSize) {

    super.init(size: size)

 startGameTextNode.text = "TAP ANYWHERE TO START!"
        startGameTextNode.horizontalAlignmentMode = SKLabelHorizontalAlignmentMode.Center
        startGameTextNode.verticalAlignmentMode = SKLabelVerticalAlignmentMode.Center
        startGameTextNode.fontSize = 20
        startGameTextNode.fontColor = SKColor.whiteColor()
        startGameTextNode.position = CGPoint(x: scene!.size.width / 2, y: scene!.size.height / 2)
        addChild(startGameTextNode)


我确实有一个背景纹理,它在游戏启动时也会移动,并且我不确定这是否是导致问题的原因。

最佳答案

没关系。我知道了我在场景中添加得太晚了。在将场景添加到地面上之前,我只是将其向上移动,然后该应用程序开始工作。

09-04 14:02