1

我花了将近 3 天的时间才发现我的问题是我将标签字体设置为 Helvetica 。每次我想要更改它的文本都会滞后。所以我的问题是 Helvetica 和 SKLabel 节点有什么问题。当我把它摆出来,我以为是 Helvetica Neue。

4

1 回答 1

3

字体本身没有问题,但SKLabelNode处理字体使用的方式。问题是,SKLabelNode 每次访问它时都会检查/加载字体。要阻止 Swift 这样做,您应该像这样在开始时创建字体:

let theFont = UIFont(name: "Helvetica", size: 17)

//Access the font like that in your label
theFont?.fontName

这里的诀窍是,Swift 引用了您的字体,并且不必每次都加载新字体。因为目前 Swift 每次都会检查字体。

如果您还没有这样做,您可以尝试的其他方法是预加载字体:

var yourLabel = SKLabelNode(fontNamed: "Helvetica Neue")
于 2015-04-21T18:32:48.987 回答