Как программно изменить текст SKLabelNode? - PullRequest
0 голосов
/ 11 июля 2019

Я добавил SKLAbelNode в SKNode, который находится внутри SKScene

Мне нужен SKNode для группировки некоторых узлов

Я добавил название "высота" к своему SKLAbelNode

и поместите этот код в класс SKScene, который был связан с моим файлом .sks

var altitude:SKLabelNode = SKLabelNode()

override func sceneDidLoad()
{
     if let alti:SKLabelNode = self.childNode(withName: "altitude") as? SKLabelNode {
           altitude = alti
     }
}

...

override func didMove (...) {
     altitude.text = "000"
}

Но всегда я получаю фатальную ошибку

UPD: Я решил эту ошибку, но у меня возник вопрос, почему, когда я указываю имя sknode, даже если оно находится внутри другого узла, и пытаюсь получить к нему доступ, я должен указать на все дерево что-то вроде

let altitude= (self.childNode(withName: "sknode") as! SKNode).childNode(withName: "altitude") as! SKLabelNode
altitude.text = "000"
...