【问题标题】:Set UIBarButtonItem Text to Size According to Length of Text根据文本长度将 UIBarButtonItem 文本设置为大小
【发布时间】:2018-03-28 17:21:18
【问题描述】:

我正在以编程方式更改 UIBarButtonItem 的文本。在大多数情况下,它运行良好,但在某些情况下,它非常长并且超过了标题栏。

我正在寻找一种方法来设置字体大小以更改以适应特定边界,这样它就不会超过标题。

【问题讨论】:

    标签: swift uinavigationbar uibarbuttonitem


    【解决方案1】:

    我没有使用编译器进行测试,但您可以尝试以下方法:

    var size = 18 - (btn.titleLabel?.text.characters.count / 3)
    btn.titleLabel?.font = UIFont(name: "Helvetica" , size: size )
    

    【讨论】:

      【解决方案2】:

      更改UIBarButtomItem 字体大小的最佳方法是使用自定义视图:

      let label = UILabel(frame: CGRect(x: 0, y: 0, width: 200, height: 44))
      label.text = "Hello world!"
      label.font = UIFont.systemFont(ofSize: UIFont.smallSystemFontSize)
      
      let barButton1 = UIBarButtonItem()
      barButton1.customView = label
      ...
      

      这样,您可以控制UILabel 上的字体大小,并在需要时将其变小。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2011-05-07
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多