Изменение цвета определенного текста с помощью NSmutableAttributedString в SwiftIOS

Программируем под IOS
Ответить Пред. темаСлед. тема
Anonymous
 Изменение цвета определенного текста с помощью NSmutableAttributedString в Swift

Сообщение Anonymous »

Проблема, с которой я столкнулся, заключается в том, что я хочу иметь возможность изменять цвет textColor определенного текста в TextView. Я использую объединенную строку и просто хочу, чтобы строки, которые я добавляю, добавлялись в текст TextView. Похоже, что я хочу использовать NSMutableAttributedString, но я не нахожу никаких ресурсов о том, как использовать это в Swift. Пока у меня есть что-то вроде этого:

Код: Выделить всё

let string = "A \(stringOne) with \(stringTwo)"
var attributedString = NSMutableAttributedString(string: string)
textView.attributedText = attributedString
Отсюда я знаю, что мне нужно найти диапазон слов, цвет текста которых необходимо изменить, а затем добавить их в атрибутированную строку. Что мне нужно знать, так это как найти правильные строки из атрибута String, а затем изменить их цвет текста.

Поскольку у меня слишком низкий рейтинг, я не могу ответить мой собственный вопрос, но вот ответ, который я нашел

Я нашел свой собственный ответ, переведя перевод некоторого кода из

Изменить атрибуты подстрок в NSAttributedString

Вот пример реализации в Swift:

Код: Выделить всё

let string = "A \(stringOne) and \(stringTwo)"
var attributedString = NSMutableAttributedString(string:string)

let stringOneRegex = NSRegularExpression(pattern: nameString, options: nil, error: nil)
let stringOneMatches = stringOneRegex.matchesInString(longString, options: nil, range: NSMakeRange(0, attributedString.length))
for stringOneMatch in stringOneMatches {
let wordRange = stringOneMatch.rangeAtIndex(0)
attributedString.addAttribute(NSForegroundColorAttributeName, value: UIColor.nameColor(), range: wordRange)
}

textView.attributedText = attributedString
Поскольку я хочу изменить цвет textColor нескольких строк, я создам вспомогательную функцию для обработки этого, но это работает для изменения textColor.

Подробнее здесь: https://stackoverflow.com/questions/252 ... g-in-swift
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • Вертикальное выравнивание NSTextAttachment в NSMutableAttributedString
    Anonymous » » в форуме IOS
    0 Ответы
    13 Просмотры
    Последнее сообщение Anonymous
  • Объект не может быть нулевым (ключ: NSFont) в NSMutableAttributedString в UILabel на iOS 17–18.
    Anonymous » » в форуме IOS
    0 Ответы
    12 Просмотры
    Последнее сообщение Anonymous
  • Изменение цвета и символа кнопки «Назад» в App Navigator с помощью Swift
    Anonymous » » в форуме IOS
    0 Ответы
    6 Просмотры
    Последнее сообщение Anonymous
  • Изменение высоты карты — это изменение цвета карты в Jetpack, составленном с помощью Material 3.
    Anonymous » » в форуме Android
    0 Ответы
    102 Просмотры
    Последнее сообщение Anonymous
  • Могу ли я объединить C++ и Swift в одном пакете Swift, используя диспетчер пакетов Swift?
    Гость » » в форуме C++
    0 Ответы
    223 Просмотры
    Последнее сообщение Гость

Вернуться в «IOS»