Межстрочный интервал UITextView возвращается к значению по умолчанию при изменении значения .text.

В инспекторе атрибутов я установил атрибут .text на вкладке UITextView как «атрибутированный», а затем изменил значение «Линия» на 1,5.

Когда новое значение присваивается полю .text в UITextView, междустрочный интервал устанавливается обратно.

введите здесь описание изображения

Левый — это контроллер представления, показанный в main.storyboard, а правый — результат после присвоения значения String в UITextView, запущенного в симуляторе.

Есть ли какое-то ограничение или что-то для меня, чтобы исправить значение межстрочного интервала после изменения .text? Я думаю, что это должно управляться кодами ..

let style = NSMutableParagraphStyle()
style.lineSpacing = 40
let attributes = [NSParagraphStyleAttributeName : style]
aboutNeyong.attributedText =
NSAttributedString(string: aboutNeyong.text!, attributes:attributes)

Приведенный выше код — это то, что я добавил после оператора присваивания.


person Yeongchan Jeon    schedule 30.09.2016    source источник
comment
показать, как вы устанавливаете текст?   -  person Umair Afzal    schedule 30.09.2016
comment
вы устанавливаете myTextView.text = что-то или myTextView.attributedText = что-то?   -  person Umair Afzal    schedule 30.09.2016
comment
@UmairAfzal это как UITextView.text = String();   -  person Yeongchan Jeon    schedule 30.09.2016
comment
исходный оператор содержит что-то еще, что возвращает значение String.   -  person Yeongchan Jeon    schedule 30.09.2016


Ответы (2)


Вы должны установить максимальную и минимальную высоту

пример :

style.maximumLineHeight = 10 style.minimumLineHeight = 10

person Sobhi Aroud    schedule 01.05.2017

Попробуйте установить поле «attributedText» UITextField, а не поле «текст». Убедитесь, что вы передаете атрибутированную строку с желаемым интервалом:

NSMutableParagraphStyle *paragraphStyle = [[NSMutableParagraphStyle alloc] init];
paragraphStyle.lineSpacing = 15; // Desired line spacing here
NSDictionary *attrsDictionary = @{ NSParagraphStyleAttributeName: paragraphStyle };

textView.attributedText = [[NSAttributedString alloc] initWithString:@"Your new string here!" attributes:attrsDictionary];
person Tim    schedule 30.09.2016
comment
Я отредактировал вопрос; Можете ли вы проверить, почему добавленные операторы не вносят никаких изменений? Это не меняется даже с кодом выше. - person Yeongchan Jeon; 30.09.2016