Ios 在UITextView中高亮显示文本
我有一个名为Ios 在UITextView中高亮显示文本,ios,objective-c,Ios,Objective C,我有一个名为Highlight的菜单项,它调用下面的函数。该功能可更改所选文本的颜色,效果良好。然而,我不确定我做得是否正确。我担心如果\u myTextView(一个UITextView)有大量文本,可能会出现性能问题 如果有更好的方法,你能看一下并提出建议吗 - (void)highlight { NSRange selectedRange = _myTextView.selectedRange; NSMutableAttributedString *attributed
Highlight
的菜单项,它调用下面的函数。该功能可更改所选文本的颜色,效果良好。然而,我不确定我做得是否正确。我担心如果\u myTextView
(一个UITextView
)有大量文本,可能会出现性能问题
如果有更好的方法,你能看一下并提出建议吗
- (void)highlight {
NSRange selectedRange = _myTextView.selectedRange;
NSMutableAttributedString *attributedString = [[NSMutableAttributedString alloc]
initWithAttributedString:_myTextView.attributedText];
[attributedString addAttribute:NSForegroundColorAttributeName
value:[UIColor redColor]
range:selectedRange];
_myTextView.attributedText = attributedString;
}
这不应该导致性能问题,因为您没有做太重的事情。即使有大量的文本,UIKit也能很好地处理这个问题。这与添加大量文本并在设备上测试以查看其处理方式一样简单
我建议您开始将对象称为self.myObject,而不是_myObject。这是因为如果您需要重写getter,您必须返回并修复代码以使用getter。这不应该导致性能问题,因为您没有做太多的事情。即使有大量的文本,UIKit也能很好地处理这个问题。这与添加大量文本并在设备上测试以查看其处理方式一样简单 我建议您开始将对象称为self.myObject,而不是_myObject。这是因为如果您需要重写getter,您必须返回并修复代码以使用getter