iOS 15 UIButton 配置标题 lineBreakMode 不起作用?

问题描述 投票:0回答:1

在iOS 14或之前,如果我们想设置一个

titleLabel's
属性,我们可以简单地使用

button.titleLabel?.lineBreakMode = .byTruncatingTail

或缩小标题文字:

button.titleLabel?.adjustsFontSizeToFitWidth = true
button.titleLabel?.minimumScaleFactor = 0.5

但是更新到iOS 15最新的API后

UIButton.Configuration
,上面的代码就不行了,按钮只是扩大了高度,这绝对不是我想要的方式,请看下面:

在使用 iOS 15

lineBreakMode
时,是否有任何解决方案可以恢复
minimumScaleFactor
UIButton.Configuration

ios swift uibutton uikit
1个回答
0
投票

从 Xcode 14.3 beta 1 开始,新属性 titleLineBreakMode 已添加到

UIButton.Configuration
,这正是我们想要的。

var config  = UIButton.Configuration.filled()
config.titleLineBreakMode = .byTruncatingTail
button.configuration = config

// also adjust font size is working properly
button.titleLabel?.minimumScaleFactor = 0.5
button.titleLabel?.adjustsFontSizeToFitWidth = true
© www.soinside.com 2019 - 2024. All rights reserved.