如果用户在系统设置里面开启了粗文本字体,并且代码通过设置imageEdgeInsets 和 titleEdgeInsets属性调整图片与标题的间距的话,按钮的标题则会被压缩:
解决方法:
if let titleLabel = button.titleLabel {
titleLabel.minimumScaleFactor = titleLabel.numberOfLines == 1 ? 0.99 : 0.0
titleLabel.adjustsFontSizeToFitWidth = titleLabel.numberOfLines == 1 ? true : false
}
虽然这样设置之后编译运行后标题还是会被压缩,但是直接点击图标运行就不会有问题了。
应该是iOS 15的UIButton.Configuration导致的问题,苹果长点心吧