Intereting Posts
iOS – настройка «rootViewController» приводит к черному экрану только на устройстве Одновременное использование AudioKit и SpriteKit Как определить модель, представление и контроллер в объективе-c? Увеличение объема в iOS Диапазон iBeacon и близость являются ошибками Невозможно создать каталог за пределами изолированной программы для THEOS Tweak Группа WatchKit: с изображением и ярлыком изображение получает 2 из 4 углов округленных iOS перестает находить маяки при блокировке экрана Как я могу опубликовать два запроса Facebook в одном классе? SDK для iOS Странный прерывистый сбой при синхронном запуске NSOperation на основной теме Контроллер просмотра подкласса iPhone и IBOutlet UITableView В iOS 10, как разрешить видео вращаться в ландшафте при отображении в приложении только для портрета iOS UITableViewCell Show редактирует программно Почему мой общий диалог пуст? Facebook SDK Получить изображение внутри ячейки представления таблицы пользовательского интерфейса

Изменить цвет первой строки UILabel

Я пытаюсь изменить UILabels первой строки UILabels . По какой-то причине это не работает. Вот мой код:

 NSMutableAttributedString *text = [[NSMutableAttributedString alloc] initWithAttributedString: label.attributedText]; [text addAttribute:NSForegroundColorAttributeName value:[UIColor redColor] range:[label.text rangeOfString:@"\n"];]; [label setAttributedText: text]; 

Я не вижу никаких изменений в первой строке.

Проблема здесь

 [text addAttribute:NSForegroundColorAttributeName value:[UIColor redColor] range:[label.text rangeOfString:@"\n"]]; 

Он будет только цветным \n

Вам нужно установить диапазон от 0 до начала \n


Изменить: вы можете попробовать этот код (он не проверен, но должен работать)

 NSRange rangeOfNewLine = [label.text rangeOfString:@"\n"]; NSRange newRange = NSMakeRange(0, rangeOfNewLine.location); [text addAttribute:NSForegroundColorAttributeName value:[UIColor redColor] range:newRange];