4

如果我有UITextViewwith textview.selectable = true,并且我想使用 a 更改选定的 TextColor UIButton,我该如何使用 swift 执行此操作?

4

1 回答 1

8

如果只想更改字符串的选定范围,则必须更改attributedText属性。您可以执行以下操作:

@IBAction func didTapButton(sender: UIButton) {
    let range = textView.selectedRange
    let string = NSMutableAttributedString(attributedString: textView.attributedText)
    let attributes = [NSForegroundColorAttributeName: UIColor.redColor()]
    string.addAttributes(attributes, range: textView.selectedRange)
    textView.attributedText = string
    textView.selectedRange = range
}

如果要更改整个字符串,可以使用 CeceXX 建议的技术。

@IBAction func didTapButton(sender: UIButton) {
    textView.textColor = UIColor.redColor()
}
于 2015-01-25T13:29:35.557 回答