Как вы меняете цвет UIFont? - PullRequest
       23

Как вы меняете цвет UIFont?

39 голосов
/ 03 января 2011

Я искал в Интернете и не могу получить хороший ответ, хотя уверен, что это очень просто. Может кто-нибудь, пожалуйста, покажите мне, как сделать следующее: Сделайте UIFont с именем "Helvetica-Bold", размером 8,0 и цветом черного.

У меня есть имя и размер, но я не могу понять, как изменить цвет:

UIFont *textFont = [UIFont fontWithName:@"Helvetica-Bold" size:8.0];

Спасибо!

Ответы [ 4 ]

55 голосов
/ 03 января 2011

UIFont не содержит / не поддерживает информацию о цвете, поэтому это невозможно. Как правило, элементы управления, использующие UIFont, такие как UILabel, имеют свойство font и textColor. Таким образом, вы могли бы установить шрифт метки, и его цвет будет таким:

myLabel.textColor = [UIColor blackColor];
myLabel.font = [UIFont fontWithName:@"Helvetica-Bold" size:8.0];
4 голосов
/ 29 марта 2016

Если вы рисуете текст, вы можете использовать следующую функцию;

[text drawAtPoint:CGPointMake(x, y) withAttributes:@{ NSFontAttributeName: [UIFont systemFontOfSize:sizeOfFont], NSForegroundColorAttributeName:[UIColor redColor] }];
4 голосов
/ 22 сентября 2012

Если вы случайно отрисовываете шрифт для текстуры в OpenGL, вы также можете использовать CGContext * функции ,

Если у вас уже есть действительный cgcontext:

CGContextSelectFont(cgContext, "Arial", 24, kCGEncodingMacRoman);
CGContextSetRGBStrokeColor(cgContext, 1.0f, 1, 1, .5f) ;
CGContextShowTextAtPoint(cgContext, 20, 20, "HI THERE", strlen("HI THERE") ) ;
1 голос
/ 13 июля 2012

Вы также можете использовать [myLabel setTextColor:[UIColor grayColor]];.

...