2014-04-08 10 views
17

Ich habe einen SKLabelNode in meiner iOS-App, um die Punktzahl eines Spielers anzuzeigen. Ich möchte in der Lage sein, die Farbe davon zu ändern (für jetzt nur zu einer Standard-Cyan-Farbe). Aber ich kann nicht herausfinden, warum es sich nicht ändert. Ich habe eine andere App, wo ich das benutzt habe und überhaupt keine Probleme hatte.Mein SKLabelNode ändert seine Farbe nicht

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; 
} 

Dann später im Update, aktualisiere ich die Zeichenfolge mit der aktualisierten Punktzahl bei jedem Update.

-(void)update:(CFTimeInterval)currentTime { 
    /* Called before each frame is rendered */ 

    pScoreNode.text = [NSString stringWithFormat:@"POWER: %ld",(long)player_score]; 


} 

Antwort

31

Ich glaube, Sie pScoreNode.fontColor = [UIColor cyanColor]; verwenden möchten.

Die color Eigenschaft ist für die Farbmischung in Verbindung mit colorBlendFactor.

2

Zum Beispiel, wenn Sie Ihr Etikett schwarz verwenden möchten;

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

FYI, für die von Ihnen tun dies in Swift Verwendung:

label.fontColor = UIColor.blackColor() 
Verwandte Themen