UIButton是iOS开发中常用的用户界面控件,用于创建可点击的按钮。在iOS 15上,如果按钮的文本过长,会出现截断的情况。
UIButton的截断文本问题可以通过以下几种方式解决:
adjustsFontForContentSizeCategory
属性,配合UIFontMetrics
来自动调整文本的字体大小,以适应按钮的大小。示例代码:
button.titleLabel?.adjustsFontForContentSizeCategory = true
button.titleLabel?.font = UIFont.preferredFont(forTextStyle: .body)
button.titleLabel?.adjustsFontSizeToFitWidth = true
button.titleLabel?.minimumScaleFactor = 0.5
titleLabel.lineBreakMode
属性:可以设置按钮文本的换行模式,以控制文本的截断方式。常用的换行模式有:.byTruncatingTail
:在文本末尾截断,并显示省略号。.byWordWrapping
:按单词换行,不截断文本。示例代码:
button.titleLabel?.lineBreakMode = .byTruncatingTail
示例代码:
let attributedString = NSAttributedString(string: "Long Button Text", attributes: [
.font: UIFont.systemFont(ofSize: 16),
.foregroundColor: UIColor.white,
.paragraphStyle: NSParagraphStyle.default
])
button.setAttributedTitle(attributedString, for: .normal)
腾讯云相关产品和产品介绍链接地址:
领取专属 10元无门槛券
手把手带您无忧上云