UITextField минимальный размер шрифта - PullRequest
13 голосов
/ 18 мая 2011

Я использую свойство minimumFontSize

textField.font = [UIFont boldSystemFontOfSize:17];
textField.textColor = [UIColor darkGrayColor];
textField.minimumFontSize = 10;
textField.adjustsFontSizeToFitWidth = YES;

Но текст никогда не достигает минимального размера шрифта 10, он усекается, но если я изменю текущий fontSize на 10, весь текст будет отображаться правильно. Я неправильно использую это свойство?

Ответы [ 2 ]

17 голосов
/ 17 июня 2015

Пока что ... вы правильно настроили UITextField, а adjustsFontSizeToFitWidth в целом работает, но я считаю, что iOS не работает.

Похоже, что текст в UITextField не будет автоматически уменьшаться за пределы 14 пунктов * - независимо от того, установлено ли для minimumFontSize значение меньше этого значения, например, разумный запрос в 10 пунктов.

A UITextField с:

  • Размер шрифта 17, минимальный размер 15 уменьшится до 15, если необходимо
  • Размер шрифта 17, минимальный размер 10 уменьшится только до 14
  • Размер шрифта 13, минимальный размер 4 останется на 13

Вы можете проверить это, сравнив три UITextField бок о бок со строками текста, которые слишком длинны для них, где минимальный размер шрифта составляет 13, 14 и 15 соответственно. Первые два появятся точно так же, в 14 очков.

Кажется, странное магическое число, но вот, пожалуйста. Читаемость с железным кулаком? Я полагаю, вы могли бы попробовать настроить размер шрифта самостоятельно или жить с minimumFontSize = 14.

* Я проверил это в IB, но оно наверняка будет применяться и к программно созданным UITextField s.

0 голосов
/ 18 мая 2011

Шрифт будет обрезан до минимального размера шрифта. Чтобы поэкспериментировать с этим, перетащите UILabel в Interface Builder, установите там свойства и измените ширину UILabel, чтобы увидеть эффект.

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