我目前将应用程序设置为在 iPad 和 Mac (Mac Catalyst) 上运行,界面选项设置为
Optimize for Mac
,并且在 在我的 Mac 上运行时更新按钮填充非常困难。 .
Scaled to Match iPad
时,它看起来是这样的:当我有
Optimize for Mac
时,就会变成这样...
Mac Catalyst Interface
时,这个确切的片段会产生上面的图像。
var config = button.configuration
config?.imagePadding = 20
config?.titlePadding = 20
config?.contentInsets = .init(top: 0, leading: 20, bottom: 0, trailing: 20)
button.configuration = config
button.setNeedsUpdateConfiguration()
button.updateConfiguration()
var cfg = UIButton.Configuration.gray()
cfg.image = UIImage(systemName: "clock")
cfg.title = "Due Orders"
cfg.imagePadding = 20
cfg.contentInsets = .init(top: 20, leading: 20, bottom: 20, trailing: 20)
let button = UIButton(configuration: cfg, primaryAction: UIAction(handler: { action in
}))
使用“Scaled to Match iPad”在 Mac 上运行时会给出以下结果:以及使用“Optimize for Mac”在 Mac 上运行时的以下内容:
针对 Mac 进行优化时,该按钮会忽略内容插图和图像填充,从而为您提供标准的 Mac 按钮外观。但请注意,图片和标题之间有空格。
您的代码没有显示所有按钮设置,因此不清楚如何在图像和标题之间没有空格。