установка NSTextView

Как я могу установить NSTextView в NSAttributedString? Я не хочу использовать textConainer, и я пробовал:

[myTextView insertText:myMutableAttributedString];

но это не сработало. Ничего не произошло... даже предупреждения или ошибки времени выполнения. Любая помощь будет оценена по достоинству.


person user657819    schedule 13.03.2011    source источник
comment
Вы убедились, что myTextField не является nil?   -  person Dave DeLong    schedule 14.03.2011
comment
Да, я проверил, что myTextView не равен нулю.   -  person user657819    schedule 15.03.2011


Ответы (4)


Textview должен быть редактируемым для вставки.

[myTextView setEditable:YES];
[myTextView insertText:myMutableAttributedString];
[myTextView setEditable:NO];
person estobbart    schedule 13.09.2012
comment
«insertText:» устарел: сначала устарел в macOS 10.11 — вместо этого используйте -insertText:replacementRange: из NSTextInputClient. Поскольку этот метод предназначен для использования исключительно системой ввода, сообщение никогда не должно отправляться в текстовое представление из приложений. Любые модификации содержимого должны осуществляться с помощью методов NSTextStorage или NSText. - person Mark Bridges; 12.12.2017

В Свифте 2.2:

myTextView.textStorage?.setAttributedString(myMutableAttributedString)

В цели-C:

[[myTextView textStorage] setAttributedString:myMutableAttributedString];

person M. Mayer    schedule 17.10.2016

Вы должны вызвать -setString с пустой строкой перед вызовом этого метода (в противном случае вы вставляете текст в объект нулевой строки):

[myTextView setString:@""];
[myTextView insertText:myMutableAttributedString];
person indragie    schedule 15.03.2011
comment
Это не сработало. Даже ничего не сообщает о проблеме в консоли. - person user657819; 16.03.2011

textView создается программно? если вы загрузите NSTextView из xib, все будет в порядке.

person Jabber    schedule 10.03.2014