2017-04-20 51 views
1

我试图将自定义颜色设置为SKLabelNode。Swift为SKLabelNode设置自定义字体颜色

这里是我的代码:

coinLabel.fontName = "Bebas" 
    coinLabel.fontSize = 30 
    coinLabel.fontColor = SKColor(red: 233, green: 157, blue: 20, alpha: 1) 
    coinLabel.text = " \(UserDefaults().integer(forKey: "COINSCORE"))" 
    coinLabel.position = CGPoint(x: -self.frame.width/3.1, y: self.frame.height/2.23) 
    coinLabel.zPosition = 1.1 
    self.addChild(coinLabel) 

但是这是行不通的,并显示前面的颜色我设置这只是这样做:

coinLabel.fontColor = .black 
+0

粘贴更多的代码 - 该代码是在什么样的方法,当它运行 – Alistra

回答

3

你需要使用像

SKColor(red: 233/255, green: 157/255, blue: 20/255, alpha: 1) 

因为红色,绿色和蓝色是介于0.0和1.0之间的值

1

如果你喜欢我,永远不会记得或想要输入所有这些255的;)。您可以扩展SKColor,以便您可以使用这些值输入rgb。

extension SKColor { 

    convenience init(r: CGFloat, g: CGFloat, b: CGFloat, a: CGFloat) { 
     self.init(red: r/255.0, green: g/255.0, blue: b/255.0, alpha:a) 
    } 

    convenience init(_ r: CGFloat, _ g: CGFloat, _ b: CGFloat) { 
     self.init(red: r/255.0, green: g/255.0, blue: b/255.0, alpha:1) 
    } 
} 

现在你可以只输入

coinLabel.fontColor = SKColor(red: 233, green: 157, blue: 20, alpha: 1) 
相关问题