У меня есть класс UITextView с функцией;
override func point(inside point: CGPoint, with event: UIEvent?) -> Bool {
let superBool = super.point(inside: point, with: event)
let characterIndex = layoutManager.characterIndex(for: point, in: textContainer, fractionOfDistanceBetweenInsertionPoints: nil)
guard characterIndex < textStorage.length else { return false }
let attributes = textStorage.attributes(at: characterIndex, effectiveRange: nil)
return superBool && attributes[NSAttributedString.Key.underlineStyle] != nil
}
Это позволяет выбирать текст с атрибутом NSAttributedString.Key.underlineStyle
. Я хотел бы изменить это, чтобы включить несколько атрибутов, например;
[NSAttributedString.Key.font: UIFont.systemFont(ofSize: 14, weight: .regular), NSAttributedString.Key.foregroundColor: UIColor.red]
Однако я не могу добавить атрибуты, содержащие более одного атрибута.