Как программно обновить UITextView maximumNumberOfLines и посмотреть обновление пользовательского интерфейса. - PullRequest
0 голосов
/ 26 августа 2018

У меня есть UITextView с отключенной прокруткой.Мне нужно программно изменить maximumNumberOfLines и посмотреть обновления пользовательского интерфейса после этого.UITextView использует автоматический макет.

textView.textContainer.maximumNumberOfLines = 0

Это должно сделать видимым весь текст из textView в пользовательском интерфейсе.

PS Подобные вопросы задавались много раз, но ответ, который работает для меня, у меня нет.t найдено.

1 Ответ

0 голосов
/ 26 августа 2018

Я узнал, как этого добиться сам.Так что в основном, когда вы меняете textView.textContainer.maximumNumberOfLines UIKit не знает об этом (но я думаю, что должен).Даже когда вы пытаетесь обновить макет.Решение простое:

    textView.textContainer.maximumNumberOfLines = 0
    textView.invalidateIntrinsicContentSize() //add this line

Вызывайте это, когда что-то меняется, что влияет на intrinsicContentSize, чтобы заметить UIKit.

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...