Есть ли способ иметь несколько строк текста, UILabel
как в UITextView
или я должен использовать второй вместо?
ios
uilabel
uitextview
line-breaks
multiline
Илья Суздальницкий
источник
источник
UILineBreakModeWordWrap
это устарело в iOS 6. Теперь вы должны использоватьNSLineBreakByWordWrapping = 0
См. Документацию здесьОтветы:
Я нашел решение.
Нужно просто добавить следующий код:
Восстановлен старый ответ (для справки и разработчики, желающие поддерживать iOS ниже 6.0):
На стороне: оба значения перечисления уступают в
0
любом случае.источник
cell.textLabel?.lineBreakMode = NSLineBreakMode.ByWordWrapping
иcell.textLabel?.numberOfLines = 0
В IB установите количество строк равным 0 (разрешено неограниченное количество строк)
При вводе текста в текстовом поле с использованием IB, используйте «alt-return», чтобы вставить возврат и перейти к следующей строке (или вы можете скопировать текст, уже разделенный строками).
источник
Лучшее решение, которое я нашел (в противном случае разочаровывающая проблема, которая должна была быть решена в рамках), похоже на решение Вейчика.
Просто установите количество строк равным 0 в IB или коде
При этом отобразятся необходимые строки, но метка будет смещена по центру по горизонтали (так, чтобы метка из 1 строки и 3 линии была выровнена по горизонтали). Чтобы исправить это добавить:
источник
Используйте это, чтобы иметь несколько строк текста в
UILabel
:Swift:
источник
источник
Если вам нужно использовать:
свойство, вы также можете использовать стандартный разрыв строки
("\n")
, в коде, чтобы вызвать новую строку.источник
Вы можете использовать,
\r
чтобы перейти к следующей строке при заполненииUILabel
использованияNSString
.источник
давайте попробуем это
источник
Решение выше не работает в моем случае. Я делаю так:
источник
Используйте сюжет borad: выберите метку, чтобы установить количество строк равным нулю ...... Или обратитесь к
источник
Swift 3
Установите нулевое количество строк для динамической текстовой информации, это будет полезно для изменяющегося текста.
источник
По некоторым причинам это не работает для меня в iOS 6, не знаю почему. Пробовал с и без приписанного текста. Какие-либо предложения.
источник
Попробуйте использовать это:
источник
Эти вещи помогли мне
Измените эти свойства UILabel
И при вводе строки используйте \ n для отображения разных слов в разных строках.
Пример :
источник
Способ 1:
Теперь звоните просто так
EX:
Способ 2:
Программный
Способ 3:
Сквозь историю
Для отображения нескольких строк, установленных на 0 (ноль), на вашем ярлыке будет отображаться более одной строки.
Если вы хотите отобразить n строк, установите n.
Смотрите ниже экрана.
Если вы хотите установить минимальный размер шрифта для надписи, нажмите «Автоматическая усадка» и выберите «Минимальный размер шрифта»
Смотрите ниже экранов
Здесь задайте минимальный размер шрифта
Пример: 9 (на этом изображении)
Если ваш ярлык получит больше текста, текст ярлыка будет уменьшен до 9
источник
источник
Вы также можете сделать это через раскадровку:
источник
Вы должны попробовать это:
источник
источник
Уже ответил, но вы можете сделать это вручную в раскадровке тоже. В Инспекторе атрибутов для метки вы можете изменить разрывы строк на перенос слов (или перенос символов).
источник
В этой функции передайте строку, которую вы хотите назначить в метке и передайте размер шрифта вместо self.activityFont и передайте ширину метки вместо 235, теперь вы получите высоту метки в соответствии с вашей строкой. это будет работать нормально.
источник
Установите ниже или в коде или в самой раскадровке
Label.lineBreakMode = NSLineBreakByWordWrapping; Label.numberOfLines = 0;
и, пожалуйста, не забудьте установить левые, правые, верхние и нижние ограничения для метки, иначе это не сработает.
источник
Свифт 4:
источник
На C # это работало для меня внутри UITableViewCell.
Я думаю, что суть в следующем:
источник
Этот код возвращает высоту размера в соответствии с текстом
источник