UILabel с постоянным размером и динамическим размером шрифта зависит от текста - PullRequest
1 голос
/ 19 февраля 2012

У меня есть UILabel на моем UIView. Я всегда получаю различные данные для своего ярлыка (из бэкэнда). У меня есть некоторые прямоугольники для отображения текста в представлении (я установил его как размер uilabel, этот размер является постоянным).

Как установить динамический шрифт для моего UILabel для его размера? Мне просто нужно отобразить текстовые данные с реальным размером шрифта, для моих прямоугольных границ. Если текст очень длинный и минимальный шрифт будет переносить текст - мне нужно применить минимальный размер шрифта для отображения большего количества текстовых данных.

(моя метка может состоять из нескольких строк, размер которых должен соответствовать прямоугольным границам)

Ответы [ 2 ]

0 голосов
/ 19 февраля 2012

Я бы сделал это следующим образом: Получить количество символов NSString. На основе этого количества символов рассчитайте размер.

NSString *myString = @"Hello";
int myInt = myString.length;
float fontSize = PUT_A_VALUE_HERE / myInt;

Вы будете играть с переменной PUT_A_VALUE_HERE, пока не получите желаемый результат. После этого измените размер шрифта

[lblYourUILabel setFont:[UIFont fontWithName:fontName size:fontSize]];
0 голосов
/ 19 февраля 2012

Существует свойство в UILable - AdjustToFitWidth в xib, где вы можете указать минимальный размер шрифта.Поэтому, если ваш текст становится длиннее, он автоматически уменьшит размер шрифта, чтобы отрегулировать его в пределах метки.

Примечание: любое значение, указанное в AdjustToFitWidth, является минимальным пределом, поэтому размер шрифта всегда будет больше или равен этому.значение.

Наслаждайтесь кодированием:)

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