为什么在使用titleEdgeInsets时,我的UIButton的标题在中间被截断了?

问题描述

这是我的UIButton定义,如下所示:

private var continueButton: AttributedButton = {
    let button = AttributedButton()
    button.backgroundColor = .systemGreen
    button.titleLabel?.font = UIFont.boldSystemFont(ofSize: 18)
    button.titleEdgeInsets = UIEdgeInsets(top: 6,left: 20,bottom: 6,right: 20)
    button.setTitle("game.continue".localized.uppercased(),for: .normal)
    button.setTitleColor(.white,for: .normal)
    button.cornerRadius = 10
    return button
}()

它看起来像这样:

enter image description here

解决方法

使用contentEdgeInsets属性代替titleEdgeInsets