UITextField最小字体大小

我正在使用属性minimumFontSize

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

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

到目前为止……你正在正确设置你的UITextField ,并且adjustsFontSizeToFitWidth确实可以正常工作,但我相信iOS正处于不足之处。

看起来UITextField中的文本不会自动缩小超过14分* – 无论你将minimumFontSize设置为小于该值,例如10分的合理要求。

一个UITextField

  • 如果需要,字体大小17,最小大小15将降至15
  • 字体大小17,最小大小10只会降至14
  • 字体大小13,最小尺寸4将保持在13

您可以通过将三个UITextField并排比较它们的文本字符串来测试这一点,其中最小字体大小分别为13,14和15。 前两个看起来完全相同,为14分。

这似乎是一个奇怪的神奇数字,但你去了。 铁腕可读性考虑因素? 我想你可以尝试自己调整字体大小或者使用minimumFontSize = 14

*我在IB中对此进行了validation,但它肯定也适用于以编程方式创建的UITextField

字体将被截断,直到最小字体大小。 要试验这一点,在Interface Builder中拖动UILabel,在那里设置属性并更改UILabel的宽度以查看效果。

Interesting Posts