2016-12-21 3 views
0

У меня есть UITextView, заполненный абзацем текста с переменной высотой во время выполнения.Настройка UITextView height на переменное число строк

Во время выполнения, как мне настроить высоту UITextView на высоту переменного количества строк (не обязательно равную номерам строк в абзаце текста)?

Например:

  • Установите UITextView на высоту 2 строки текста для некоторых случаев текста, а затем
  • Установите UITextView на высоту 5 строк текста для других случаев текста (с прокрутки-бар для прокрутки для других линий, как это поведение по умолчанию)

аналог в CSS будет установить высоту вида на 2em если текст «маленький», или 5em если текст " большой ", или в Андро id maxLines на TextView во время выполнения.

+0

Использование autolayout, в соответствии с текстом, вы можете использовать различные значения высоты ограничения – Dili

+0

@Dili Я не могу использовать предустановленную высоту как количество текстовых изменений во время выполнения, а я хочу высота, основанная на # строках. Например. только показывать 2 строки для некоторого текста или показывать только 5 строк текста перед полосой прокрутки. (обновленный Q, чтобы сделать это более понятным) – user2560886

ответ

1

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

@IBOutlet weak var heightConstraint: NSLayoutConstraint! 
override func viewDidLoad() { 
     super.viewDidLoad() 

     heightConstraint.constant = 200 // or something else 

    } 

viewcontroller

Смежные вопросы