我正在尝试制作一个标签,该标签将在游戏启动时显示,但是一旦启动它就会崩溃。错误为“由于未捕获的异常'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)
我确实有一个背景纹理,它在游戏启动时也会移动,并且我不确定这是否是导致问题的原因。
最佳答案
没关系。我知道了我在场景中添加得太晚了。在将场景添加到地面上之前,我只是将其向上移动,然后该应用程序开始工作。