我正在使用以下代码在 NSTextView 中使选定的文本变为粗体
[self.textView.attributedString addAttribute:NSFontAttributeName value:[NSFont boldSystemFontOfSize:12] range:self.textView.selectedRange];
self.textView 是 NSTextView 的出口。Xcode 发出警告,addAttribute 可能无法工作,因为该属性的类型为 NSAttributedString 而不是 NSMutableAttributedString。代码可以工作,但这样做有错吗?如果是这样,正确的方法是什么?
更新:
我找到了另一种方法:
NSMutableAttributedString *textFieldText = [self.textView.attributedString mutableCopy];
[textFieldText addAttribute:NSFontAttributeName value:[NSFont boldSystemFontOfSize:12] range:self.textView.selectedRange];
[self.textView.textStorage setAttributedString:textFieldText];
由于这两种方法都有效,我想知道哪种方法更好。