【发布时间】:2016-03-21 15:51:43
【问题描述】:
我的应用中有一个标签,它被限制为边距 |[myLabel]|。我想,无论设备是什么(iPhone4、iPhone5、iPhone6 和 iPhone6Plus),都有 15 个字符并调整字体大小以适应。
iPhone6Plus:
iPhone6:
我希望在 iPhone6Plus 中字体更大以适应 iPhone6,而在 iPhone4 和 5 中字体更小。这可能吗?
【问题讨论】:
我的应用中有一个标签,它被限制为边距 |[myLabel]|。我想,无论设备是什么(iPhone4、iPhone5、iPhone6 和 iPhone6Plus),都有 15 个字符并调整字体大小以适应。
iPhone6Plus:
iPhone6:
我希望在 iPhone6Plus 中字体更大以适应 iPhone6,而在 iPhone4 和 5 中字体更小。这可能吗?
【问题讨论】:
label.numberOfLines = 1
label.adjustsFontSizeToFitWidth = true
【讨论】:
另一种方法(如果没有其他方法)是在运行时将文本分配给 ui 标签,使用您在最大目标设备上使用的最大字体大小。然后(伪代码):
Obtain temp label intrinsic length
If intrinsic length > display label.width then reduce size by 1.
Repeat until intrinsic length <= display label.width
希望对你有帮助!
【讨论】: