RobertJoseph RobertJoseph - 2 years ago 178
iOS Question

Drawing colored text in UIView's -drawRect: method

I am trying to draw colored text in my

subclass. Right now I am using the Single View app template (for testing). There are no modifications except the

The text is drawn but it is always black no matter what I set the color to.

- (void)drawRect:(CGRect)rect
UIFont* font = [UIFont fontWithName:@"Arial" size:72];
UIColor* textColor = [UIColor redColor];
NSDictionary* stringAttrs = @{ UITextAttributeFont : font, UITextAttributeTextColor : textColor };

NSAttributedString* attrStr = [[NSAttributedString alloc] initWithString:@"Hello" attributes:stringAttrs];

[attrStr drawAtPoint:CGPointMake(10.f, 10.f)];

I've also tried
[[UIColor redColor] set]
to no avail.


NSDictionary* stringAttrs = @{ NSFontAttributeName : font,
NSForegroundColorAttributeName : textColor };

Answer Source

Instead of UITextAttributeTextColor you should use NSForegroundColorAttributeName. Hope this helps!

Recommended from our users: Dynamic Network Monitoring from WhatsUp Gold from IPSwitch. Free Download