У меня есть xib
, который я использую для ячеек таблицы (с переменной высотой, в вертикальном UITableView), и каждая ячейка заполняется данными с текстом изображения и переменной длины, но, вероятно, с разным количеством строк , Я попробовал обернуть их в horizontal UIStackView
, но я обнаружил, что нет текстового представления, которое изменяет размер его контейнера, чтобы он соответствовал переменной нескольким строкам.Возможно ли сделать UILabel, UITextView или подобное, что всегда изменяет его высоту, чтобы соответствовать его содержимому в Interface Builder без усечения?
Как UILabel
, так и UITextView
обрезают их содержимое, казалось бы, произвольно в Interface Builder, а при изменении размера изображения контейнер UIStackView растет и сжимается соответственно, чтобы обернуть его содержимое.
Есть ли какой-либо вид или способ добавления пользовательского представления, которое динамически изменяет размер его высоты в соответствии с его длиной текста, без усечения?
Выберите 'UILabel' и в инспекторе атрибутов просто установите' numberOfLines' в 0 и оберните режим 'word wrap'. Если вы правильно установили ограничения, он всегда будет изменять размер, чтобы соответствовать его контенту. Я не уверен, как он работает в представлении стека, но внутри обычного 'UIView' он отлично работает. – Rikh
По крайней мере, в интерфейсе Builder он не изменяет размер при изменении текста на боковой панели свойств, даже если строки равны 0, а 'word wrap' установлен. – JaviCasa
Это должно быть даже в интерфейсе. Вероятно, некоторые ограничения не позволяют ему правильно изменять размер, поскольку предполагаемое ограничение имеет более низкий приоритет, чем явно определенное ограничение, попробуйте присвоить 'UILabel' высоту'> = '5. – Rikh