I try to assign attributes to 3 last chars of newClock
string, which is @"3:33:23"
.
However I get an error when construct NSRange
:
NSMutableAttributedString *mas = [[NSMutableAttributedString alloc]initWithString:newClock];
[mas addAttributes:@{NSForegroundColorAttributeName:[UIColor grayColor],
NSFontAttributeName:[UIFont fontWithName:@"HelveticaNeue-Light" size:12]}
range:NSMakeRange(newClock.length-3,newClock.length)];
NSMakeRange(i, j) creates a range with location i and length j.
If for example the size of your string is 10 and your range starts in 5, and you do this:
NSMakeRange(5,10)
Your range goes from 5 to 15, so out of your string.
Try:
NSMakeRange(newClock.length-3,3)];