2013-10-13 3 views
10

Я пытаюсь присвоить атрибуты 3 последним символам строки newClock, которая равна @"3:33:23".NSMutableRLEArray objectAtIndex: effectiveRange :: Вне границ

Однако я получаю сообщение об ошибке, когда конструкция 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)]; 

ответ

31

NSMakeRange (I, J) создает диапазон с места я и длина J.

Если, например, размер вашей строки 10 и ваш диапазон начинается в 5, и вы делаете это:

NSMakeRange(5,10) 

Ваш диапазон идет от 5 до 15, так что из вашей строки.

Try:

NSMakeRange(newClock.length-3,3)]; 

 Смежные вопросы

  • Нет связанных вопросов^_^