Comment changer la couleur d'un UIFont?
Question
Je l'ai cherché sur le web et je ne peux pas obtenir une bonne réponse, même si je suis sûr que ce soit très simple. Quelqu'un peut-il s'il vous plaît me montrer comment faire ce qui suit:. Faire un UIFont du nom « Helvetica-Bold », taille 8,0, et la couleur du noir
J'ai le nom et la taille, mais je ne peux pas comprendre comment changer la couleur:
UIFont *textFont = [UIFont fontWithName:@"Helvetica-Bold" size:8.0];
Merci!
La solution
UIFont ne contient pas / maintenir des informations de couleur, donc ce n'est pas possible. En général, les contrôles qui utilisent UIFont comme un UILabel ont à la fois une police et une propriété textColor. Donc, vous devez définir la police d'une étiquette et sa couleur comme ceci:
myLabel.textColor = [UIColor blackColor];
myLabel.font = [UIFont fontWithName:@"Helvetica-Bold" size:8.0];
Autres conseils
Si par hasard vous rendre la police à une texture dans OpenGL, vous pouvez également utiliser le * CGContext fonctions ,
En supposant que vous avez déjà un cgcontext valide:
CGContextSelectFont(cgContext, "Arial", 24, kCGEncodingMacRoman);
CGContextSetRGBStrokeColor(cgContext, 1.0f, 1, 1, .5f) ;
CGContextShowTextAtPoint(cgContext, 20, 20, "HI THERE", strlen("HI THERE") ) ;
Si vous afficher du texte, vous pouvez utiliser la fonction suivante;
[text drawAtPoint:CGPointMake(x, y) withAttributes:@{ NSFontAttributeName: [UIFont systemFontOfSize:sizeOfFont], NSForegroundColorAttributeName:[UIColor redColor] }];
Vous pouvez également utiliser [myLabel setTextColor:[UIColor grayColor]];
.