我正在尝试在NSTextView中设置属性字符串,如果文本比文本视图高,则除非滚动文本框,否则文本根本不会显示。
关于NSTextView中的属性字符串的帖子不多,所以也许我只是做错了。以下是我设置文本的方式:
[[self.textView textStorage] appendAttributedString:attributedString];
答案 0 :(得分:1)
您必须以编程方式告诉NSTextView
它必须使新字符串可见:
NSUInteger length = [[self.textView string] length];
[self.textView scrollRangeToVisible:NSMakeRange(length,0)];
如果附加的字符串是“简单”字符串或属性字符串,这应该独立。
答案 1 :(得分:0)
在对文本存储进行一系列更改之前调用-beginEditing
,然后再-endEditing
。请参阅Text System Storage Layer Overview: Changing Text Storage。