Код, который вы разместили, мне кажется правильным.
иногда текст теряет передний план
цвет
Это цвет переднего плана, который вы используете временный атрибут? Обратите внимание, что использование -setTemporaryAttributes:forCharacterRange:
устанавливает (вместо добавляет к ) словарь временных текстовых атрибутов для данного диапазона (см. -addTemporaryAttributes:forCharacterRange:
для добавления).
или фон не распространяется
весь ассортимент
Не видя остальной части вашего кода, единственное, что я могу предложить, это убедиться, что ваше значение range
является правильным, когда это происходит. Попробуйте NSLog
'прямо перед тем, как использовать его, и проверьте журнал сразу после того, как воспроизвели проблему.
Возможно, вы также захотите убедиться, что после установки цвета фона во временные атрибуты вы не удаляете этот атрибут из части этого диапазона в другом месте вашего кода.