我的SKLabelNode无法改变颜色

22
我在iOS应用程序中使用一个SKLabelNode来显示玩家的分数。我想要能够更改它的颜色(现在,只是更改为标准青色)。但是我似乎无法弄清楚为什么它没有改变。我有另一个应用程序,在那里我使用了这个功能,而且完全没有问题。
我在我的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];


}
3个回答

36

我相信您想使用pScoreNode.fontColor = [UIColor cyanColor];

color属性用于与colorBlendFactor一起进行颜色混合。


12

提醒一下,如果你是用Swift进行这个操作,可以使用以下代码:

label.fontColor = UIColor.blackColor()

3
例如,如果您想将标签设为黑色,请使用以下代码:color: black;
label.color = [SKColor blackColor];
label.colorBlendFactor = 1;

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接