我有一个textView,其中包含一个可编辑的文本(其颜色和字体属性由用户设置)我为了实现这一点而实现了一个attributionText,但是当textView被清空时(其中没有文本) )属性仍然是之前选择的属性。即如果选择了红色,当删除所有文本时,如果键入新文本,则保持红色,我希望这个新文本具有颜色和字体的默认值。我试图将attributedText设置为nil,但我不知道如何指示textView没有文本,我在UITextView扩展中有以下代码:
func setAttributedValueAtSelectedTextRange(_ attributeName: String, value: Any) {
let textRange = selectedRange
let selectedText = NSMutableAttributedString(attributedString: attributedText)
selectedText.addAttribute(attributeName, value: value, range: textRange)
attributedText = selectedText
selectedRange = textRange
attributedText = nil
}
答案 0 :(得分:3)
将应用于新键入文本的属性来自typingAttributes
属性。选择文本时会自动更改,因此新文本与替换的文本匹配,如果选择为空,则会在其前面添加。
在您的情况下,您可以将其设置为空字典以清除它。
答案 1 :(得分:0)
确定正确的点时,需要将属性重置为默认值。 IE浏览器。 textField.textColor = UiColor.black