如何缩放button中的字体

我试图在Swift中完成我的第一个应用程序,并且遇到了这个问题。 我有一些button与tittles和背景图像。 在不同的设备上运行模拟会使它们缩放,所以标题会从button框架中跳出来。 在我的Xcode属性检查器没有“dynamictypes自动调整字体”checkbox,所以我做了自定义的UIButton类,并作出可检查的变种

@IBInspectable var adjustFontSize : Bool { set { titleLabel?.adjustsFontForContentSizeCategory = newValue } get { return titleLabel!.adjustsFontForContentSizeCategory } 

但这并没有帮助,我得到了“自动调整字体需要使用dynamictypes文本样式”的警告

那么当button在不同的设备上改变大小和比例时,我怎样才能使我的button标题缩放比例适合button框架?

试试这些

 button.titleLabel!.numberOfLines = 1 button.titleLabel!.adjustsFontSizeToFitWidth = true button.titleLabel!.baselineAdjustment = .alignCenters 

但是对于他们的工作,你将不得不在故事板或编程设置button宽度约束。

这将使标题大小根据button的宽度而改变。