Ios 具有Helvetica产生滞后的SKLabelNode
我花了将近3天的时间才发现我的问题是我将标签字体设置为Helvetica。每次我想更改它的文本都会延迟。所以我的问题是Helvetica和SKLabel节点有什么问题。当我设置它时,我以为它是Helvetica Neue。字体本身没有问题,但它是如何使用的Ios 具有Helvetica产生滞后的SKLabelNode,ios,swift,fonts,sprite-kit,sklabelnode,Ios,Swift,Fonts,Sprite Kit,Sklabelnode,我花了将近3天的时间才发现我的问题是我将标签字体设置为Helvetica。每次我想更改它的文本都会延迟。所以我的问题是Helvetica和SKLabel节点有什么问题。当我设置它时,我以为它是Helvetica Neue。字体本身没有问题,但它是如何使用的SKLabelNode处理字体使用。问题是,每次访问时,SKLabelNode都会检查/加载字体。要阻止Swift这样做,您应该在开始时创建如下字体: let theFont = UIFont(name: "Helvetica", size:
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")
但这只发生在直升机上,不应该是这样。检查解决方案是否可行。现在我知道发生了什么,我有一个打字错误。我讨厌字符串,因为我写了它。这救了我!非常感谢。诀窍是使用fontName创建一个SKLabelNode,该fontName用作将来所有标签的预加载引用。现在的演出非常顺利。