Justgrant2009
Justgrant2009

Reputation: 603

My SKLabelNode doesn't change color

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

Answers (3)

DamongoCoder
DamongoCoder

Reputation: 431

FYI, for those of you doing this in Swift use:

label.fontColor = UIColor.blackColor()

Upvotes: 12

Ahmet Hayrullahoglu
Ahmet Hayrullahoglu

Reputation: 960

For example if u want to make your label black use;

label.color = [SKColor blackColor];
label.colorBlendFactor = 1;

Upvotes: 3

Thompson
Thompson

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

Related Questions