我的iOS应用程序中有一个SKLabelNode来显示玩家的分数。我想能够改变它的颜色(现在,只是标准的青色)。但我似乎无法弄清楚为什么它没有改变。我有另一个应用程序,我已经使用过这个并没有任何问题。
SKLabelNode *pScoreNode;
NSString *playerScoreTracker;
- (SKLabelNode *)playerScoreNode
{
pScoreNode = [SKLabelNode labelNodeWithFontNamed:@"NEONCLUBMUSIC"];
playerScoreTracker = [NSString stringWithFormat:@"POWER: %ld",(long)player_score];
pScoreNode.text = playerScoreTracker;
pScoreNode.fontSize = 20;
pScoreNode.position = CGPointMake(CGRectGetMidX(self.frame),inBoundsOffset/3);
pScoreNode.color = [SKColor cyanColor];
pScoreNode.name = @"player1ScoreNode";
return pScoreNode;
}
然后在更新中,我会在每次更新时使用更新的分数更新字符串。
-(void)update:(CFTimeInterval)currentTime {
/* Called before each frame is rendered */
pScoreNode.text = [NSString stringWithFormat:@"POWER: %ld",(long)player_score];
}
答案 0 :(得分:34)
我相信你想使用pScoreNode.fontColor = [UIColor cyanColor];
。
color
属性用于与colorBlendFactor
一起进行颜色混合。
答案 1 :(得分:11)
仅供参考,对于那些在Swift中使用的人:
label.fontColor = UIColor.blackColor()
答案 2 :(得分:3)
例如,如果你想让你的标签黑色使用;
label.color = [SKColor blackColor];
label.colorBlendFactor = 1;