2013-10-13 3 views
4

Я пишу 2d игру в комплекте спрайтов, и я создаю экран меню. Все в порядке до сих пор, кроме того, что текст всегда выглядит белым, любые значения красного, зеленого, синего и т. Д., Которые я вводил в код. Это код, который я использую, чтобы создать фон для меню:Sprite kit- Невозможно изменить цвет текста (всегда белый)

-(id)initWithSize:(CGSize)size 
{ 
if (self = [super initWithSize:size]) { 

    NSLog(@"Size: %@", NSStringFromCGSize(size)); 
    [self setBackgroundColor:[SKColor colorWithRed:0.9 green:0.9 blue:0.9 alpha:1.0]]; 

    self.writing = [SKLabelNode labelNodeWithFontNamed:@"Thonburi Bold"]; 
    self.writing.text = @"MAIN MENU"; 
    self.writing.fontSize = 42; 
    self.writing.color = [SKColor colorWithRed:0.1 green:0.1 blue:0.1 alpha:1.0]; 
    self.writing.position = CGPointMake(130, 270); 
    [self addChild:self.writing]; 
} 
return self; 

}

У меня есть другой код в проекте, и я проверил, что ни один из них не иметь ничего общего с цветом текст на этом экране.

(Я новичок в программировании, так что это может быть довольно очевидная ошибка)

Заранее спасибо!

ответ

10

Недвижимость color - цвет смеси. Вы хотите использовать fontColor, чтобы изменить цвет текста.

label.fontColor = [SKColor colorWithRed:0.1 green:1 blue:0.1 alpha:1.0]; 

Вы также можете использовать color и установить colorBlendFactor 1. Хотя это может быть медленнее, в зависимости от того, как она обрабатывается внутри.

+0

Спасибо, исправлена ​​проблема. Знал, что это будет что-то просто :) – OLZ1

+0

Использование атрибута .color, обработанного через iOS8, для установки цвета текста, но больше не работает в iOS 9. Для установки цвета текста необходимо использовать атрибут .fontColor. –

+0

Спасибо, это сработало для меня :) – Nathan

Смежные вопросы