Как заставить UITextView использовать атрибут NSFont по умолчанию, когда пользователь вводит где угодно

У меня есть UITextView это отображает NSAttributedText с двумя разными шрифтами. Представьте себе: "Образец текста здесь".

Если пользователь удаляет до символа "t" или выбирает середину текста и вводит "хахаха", новый текст будет выделен жирным шрифтом. Так это будет выглядеть так:

"Пример Tehahahaxt здесь." ИЛИ "Образец Texthahaha здесь."

SO: Как я могу предотвратить это? другими словами, как я могу заставить UITextView использовать только определенный шрифт, когда пользователь начинает печатать, независимо от того, где он находится!

ПРИМЕЧАНИЕ. Я уже пытался установить typingAttributes собственностью UITextView в -textView:shouldChangeTextInRange: но это изменяет размер контента, и это не будет работать для меня.

1 ответ

Реализуйте textViewDidChange: метод в вашем делегате и выполните следующее.

-(void)textViewDidChange:(UITextView *)textView
{
   NSAttributedString *attributedText = textView.attributedText;
   if (attributedText)
   {
      textView.text = attributedText.string;
   }
}
Другие вопросы по тегам