Ich möchte wissen, gibt es eine Möglichkeit, Hintergrundfarbe für eine SKLabelNode nicht Schriftfarbe festlegen. Ich suche nach etwas wie dem unten erwähnten Code, der in iOS-Apps verfügbar ist.Hintergrundfarbe für SKLabelNode einstellen?
9
A
Antwort
9
Versuchen Sie, den SKLabelNode als Kind eines SKSpriteNode hinzuzufügen.
SKLabelNode *label = [[SKLabelNode alloc]initWithFontNamed:@"Helvetica"];
label.position = CGPointMake(0, -label.frame.size.height/2);
SKSpriteNode *background = [SKSpriteNode spriteNodeWithColor:[UIColor redColor] size:CGSizeMake(label.frame.size.width, label.frame.size.height)];
background.position = CGPointMake(200, 100);
[background addChild:label];
[self addChild:background];
0
Hinzufügen der SKLabelNode als Kind eines SKSpriteNode funktioniert, aber es versteckt den Text. Also habe ich dieses Problem gelöst, indem ich die zPosition des Hintergrunds auf eine negative Zahl gesetzt habe. Hier ist der swift 3 Code:
var label = SKLabelNode(fontNamed: "Helvetica")
label.position = CGPoint(x: CGFloat(0), y: CGFloat(-label.frame.size.height/2))
var background = SKSpriteNode(color: UIColor.red, size: CGSize(width: CGFloat(label.frame.size.width), height:CGFloat(label.frame.size.height)))background.position = CGPoint(x: CGFloat(200), y: CGFloat(100))
background.zPosition = -1
label.addChild(background)
self.addChild(label)
+1
Alternative: Fügen Sie den Sklabelnode als Kind des skspritenode hinzu. dann wird der Text nicht versteckt. – Crashalot
Nun Text wird nicht gezeigt in 'SKLabelNode' und dass bestimmte Bereich, wo ich hinzugefügt' SKSpriteNode' mit seiner Farbe gefüllt. –
Haben Sie die Eigenschaften label.text und label.fontColor so eingestellt, dass sie sichtbar sind? – Sudeep
Ja. Es hat alles gut funktioniert, bevor diese Codezeilen hinzugefügt wurden. Wenn ich "clearColor" zu "SKSpriteNode" gebe, dann ist nichts sichtbar. –