UITextField最小字体大小

Joh*_*ohn 15 objective-c uitextfield ios

我正在使用该物业 minimumFontSize

textField.font = [UIFont boldSystemFontOfSize:17];
textField.textColor = [UIColor darkGrayColor];
textField.minimumFontSize = 10;
textField.adjustsFontSizeToFitWidth = YES;
Run Code Online (Sandbox Code Playgroud)

但是文本永远不会达到10的最小字体大小,它会被截断,但如果我将当前的fontSize更改为10,则整个文本会正确显示.我使用这个属性错了吗?

Cor*_*all 18

到目前为止......你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的.


ing*_*.am 0

字体将被截断直到最小字体大小。要对此进行实验,请在 Interface Builder 中拖动 UILabel,在其中设置属性并更改 UILabel 的宽度以查看效果。

  • 原始海报指的是 UITextField,而不是 UILabel。adjustmentFontSizeToFitWidth 似乎不适用于文本字段。 (2认同)