22

I have a string in which last word would always be of a different color compared to the other words in entire string eg: if the string color is black then last word in the statement would be of red color. I am using NSAttributed string for it as below:

NSDictionary *attrDict = [NSDictionary dictionaryWithObject:[UIFont fontWithName:Arial size:16.0] forKey:NSFontAttributeName];
NSMutableAttributedString *AattrString = [[NSMutableAttributedString alloc] initWithString:@"This is a" attributes: attrDict];

I would be making similar NSAttributedString for the last word and will the amend it with first string.

Question: I want to add color to the string along with the font. I am already handling the font using dictionary. But can I add the color handler/code in the same dictionary or using "addAttribute:" on NSAttributedString is the only other way to add color or any other attributes?

tech_human
  • 6,592
  • 16
  • 65
  • 107

1 Answers1

57

Add the color to the same dictionary as the font:

NSDictionary *attrDict = @{
    NSFontAttributeName : [UIFont fontWithName:Arial size:16.0],
    NSForegroundColorAttributeName : [UIColor redColor]
};
rmaddy
  • 314,917
  • 42
  • 532
  • 579