Reputation: 603
I have an SKLabelNode in my iOS app to display a player's score. I want to be able to change the color of it (for now, just to a standard cyan color). But I can't seem to figure out why it's not changing. I have another app where I've used this and had no issues at all.
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;
}
Then later in the update, I update the string with the updated score on each update.
-(void)update:(CFTimeInterval)currentTime {
/* Called before each frame is rendered */
pScoreNode.text = [NSString stringWithFormat:@"POWER: %ld",(long)player_score];
}
Upvotes: 22
Views: 7069
Reputation: 431
FYI, for those of you doing this in Swift use:
label.fontColor = UIColor.blackColor()
Upvotes: 12
Reputation: 960
For example if u want to make your label black use;
label.color = [SKColor blackColor];
label.colorBlendFactor = 1;
Upvotes: 3
Reputation: 1098
I believe you want to use pScoreNode.fontColor = [UIColor cyanColor];
.
The color
property is for color blending in conjunction with colorBlendFactor
.
Upvotes: 36