由于未知原因,文本节点被拖到可见 space 之外

text node gets dragged outside the visible space for unknown reason

我是 iOS 应用程序开发的新手,我一直在尝试让我的节点按照我的意愿出现在场景中时遇到问题。我有这个场景,我试图在屏幕中间和顶部显示一些文本。只有当我有 10 个声望时,我才会在这里分享截图:(

但是发生的事情是我试图显示的文本节点由于某种原因被拖到可见 space 之外。这是代码 -

highestScore.fontName = "Helvetica"
    highestScore.color = SKColor(red: 0.5, green: 0.5, blue: 0.5, alpha: 0.5)
    highestScore.fontSize = 60
    highestScore.text = "0"
    highestScore.position = CGPointMake(CGRectGetMidX(self.frame), self.frame.height - 100)
    // scoreLabel.zPosition = 10
    self.addChild(highestScore)

更奇怪的是,当我从另一个场景回到这个场景时,文本节点出现在不同的位置,也许是正确的位置。

如有任何帮助,我们将不胜感激。谢谢!

您的代码完全正确,不需要使用 zPosition。 您的问题是场景框架的大小。 GameViewController 帧,其中嵌入了您的 GameScene,与您的场景大小不同。

要解决该问题,请打开您的 GameViewController.swift 文件并在 viewDidLoad 方法中的 scene.scaleMode = .AspectFill:

行之后添加以下代码行
scene.size = skView.bounds.size

这样,两个框架的大小相同,您可以使用您的代码。