【发布时间】:2018-03-28 17:21:18
【问题描述】:
我正在以编程方式更改 UIBarButtonItem 的文本。在大多数情况下,它运行良好,但在某些情况下,它非常长并且超过了标题栏。
我正在寻找一种方法来设置字体大小以更改以适应特定边界,这样它就不会超过标题。
【问题讨论】:
标签: swift uinavigationbar uibarbuttonitem
我正在以编程方式更改 UIBarButtonItem 的文本。在大多数情况下,它运行良好,但在某些情况下,它非常长并且超过了标题栏。
我正在寻找一种方法来设置字体大小以更改以适应特定边界,这样它就不会超过标题。
【问题讨论】:
标签: swift uinavigationbar uibarbuttonitem
我没有使用编译器进行测试,但您可以尝试以下方法:
var size = 18 - (btn.titleLabel?.text.characters.count / 3)
btn.titleLabel?.font = UIFont(name: "Helvetica" , size: size )
【讨论】:
更改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 上的字体大小,并在需要时将其变小。
【讨论】: