Swift 如何在spritekit中缓存或预加载SKLabelNode字体

Swift 如何在spritekit中缓存或预加载SKLabelNode字体,swift,sprite-kit,sklabelnode,Swift,Sprite Kit,Sklabelnode,我想加载字体一次,并将其用于其他sklabel节点 let originalLabel: SKLabelNode = SKLabelNode(fontNamed: "fontName"); 后来 var labelNode = originalLabel; var labelNodeSecond = originalLabel; 但这会产生以下错误 尝试添加已具有父节点的SKNode:SKLabelNode您可以通过初始化UIFont来设置字体一次: let yourFont = UIFon

我想加载字体一次,并将其用于其他sklabel节点

let originalLabel: SKLabelNode = SKLabelNode(fontNamed: "fontName");
后来

var labelNode = originalLabel;
var labelNodeSecond = originalLabel;
但这会产生以下错误


尝试添加已具有父节点的SKNode:SKLabelNode

您可以通过初始化
UIFont
来设置字体一次:

let yourFont = UIFont(name: "yourfontName", size: 17)

var firstLabel = SKLabelNode(fontNamed: yourFont?.fontName) 
var secondLabel = SKLabelNode(fontNamed: yourFont?.fontName)

这样,您只需设置一次字体,SKLabelNodes就不必自己加载了。

感谢Christian,这一点让游戏速度提高了40倍,因为我正在创建8个SKLabelNodes,而且速度非常慢,即使字体的名称是正确的!再次感谢你的帮助