如何在启动节点后更新SKLabelNode颜色?

时间:2014-10-25 18:29:47

标签: swift colors sprite-kit sklabelnode

我的Swift代码中有SKLabelNode。我需要在SKAction期间更改Label的颜色。简单地:

override func didMoveToView(view: SKView) {
...
var color = UIColor(red: CGFloat(1.0), green: CGFloat(0.0), blue: CGFloat(0.0), alpha: CGFloat(0.0))
myLabel.fontColor = color
...
}

不起作用。我仍然需要以某种方式更新节点,但如何?我对Swift和Sprite Kit不感兴趣。

2 个答案:

答案 0 :(得分:4)

你需要它在SKAction吗?如果没有,只需使用:

myLabel.fontColor =  SKColor.blueColor()

用你想要的任何颜色替换blueColor,或者使用通用的方法,在这里浮动'是255的一小部分(例如50.0f / 255.0f)。

myLabel.fontColor = SKColor(red: floatHere, green: floatHere, blue: floatHere, alpha: floatFrom0To1Here)

如果您确实需要通过SKAction设置颜色,可以使用此方法:

myLabel.runAction(SKAction.colorizeWithColor(UIColor.blueColor(), colorBlendFactor: 1, duration: 1))

答案 1 :(得分:0)

几周前我遇到过类似的问题。 尝试将颜色变量更改为以下内容:

var color = UIColor(red: 1.0 / 255, green: 0.0 / 255, blue: 0.0 / 255, alpha: 0.0)