Я пытаюсь получить данные из поля в Firestore, что происходит в функции get number, которая работает :) Затем я хочу использовать ее в качестве метки для SKnode в ARKit, но поскольку данные из Firestore вызываются асинхронно, метка не может быть непосредственно возвращенным в блоке завершения, и если узел метки создан снаружи, тогда у него нет обновленного значения из firestore?
func view(_ view: ARSKView, nodeFor anchor: ARAnchor) -> SKNode? {
guard let imageAnchor = anchor as? ARImageAnchor,
let ImageName = imageAnchor.referenceImage.name,
let scannedImage = self.images[ImageName]
else { return nil}
getNumber{ number in
let labelNode = SKLabelNode(text: number)
labelNode.horizontalAlignmentMode = .center
labelNode.verticalAlignmentMode = .center
//return labelnode; - doesnt work because it is in the completion block
}
//return labelNode; - doesnt work because labelnode is not defined - this runs before the completion block
}