【问题标题】:Adjust font size to uilabel width将字体大小调整为 uilabel 宽度
【发布时间】:2016-03-21 15:51:43
【问题描述】:

我的应用中有一个标签,它被限制为边距 |[myLabel]|。我想,无论设备是什么(iPhone4、iPhone5、iPhone6 和 iPhone6Plus),都有 15 个字符并调整字体大小以适应。

iPhone6Plus:

iPhone6:

我希望在 iPhone6Plus 中字体更大以适应 iPhone6,而在 iPhone4 和 5 中字体更小。这可能吗?

【问题讨论】:

    标签: swift swift2


    【解决方案1】:
    label.numberOfLines = 1
    label.adjustsFontSizeToFitWidth = true
    

    【讨论】:

    • 这对我不起作用,我使用它就像 numberLaber.text = "123456789012345" 然后 numberLabel.adjustsSizeToFitWidth = true。
    • 请尝试:label.numberOfLines = 1 label.adjustsFontSizeToFitWidth = true
    【解决方案2】:

    在标签的属性检查器中:

    【讨论】:

    • 你能解释一下如何使用它吗? @Ro22e0
    • 在情节提要中,当您在属性检查器中选择标签时,您就有了这个。如果您单击字体后面的加号按钮,您可以根据设备的宽度和高度设置字体
    • 这不是横向、纵向和 iPad 上的差异,而不是 iPhone 之间的差异吗?如果我错了告诉我
    【解决方案3】:

    另一种方法(如果没有其他方法)是在运行时将文本分配给 ui 标签,使用您在最大目标设备上使用的最大字体大小。然后(伪代码):

    Obtain temp label intrinsic length
    
    If intrinsic length > display label.width then reduce size by 1.
    
    Repeat until intrinsic length <= display label.width
    

    希望对你有帮助!

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-02-11
      • 1970-01-01
      • 1970-01-01
      • 2020-03-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多