如何根据 WatchKit 中的手表大小缩放字体大小?

How can I scale font size based on watch size in WatchKit?

我有一个 Apple Watch 应用程序,我想根据屏幕大小调整字体大小。目前,我发现缩放字体大小的唯一方法是基于为情节提要中的每个大小设置设备变化。但是,我想知道是否有办法解决这个问题。我希望有一种方法可以根据屏幕大小自动缩放字体大小。任何提示或建议表示赞赏。

您应该将字体大小乘以屏幕的当前宽度,然后将乘积除以您选择的参考屏幕大小(在本例中,它是 38mm 大小,其宽度为 136 个逻辑像素)。

let label = WKInterfaceLabel()

let fontSize: CGFloat = 12
let scaledFontSize = fontSize * WKInterfaceDevice.current.screenBounds.width / 136

let font = UIFont.systemFont(ofSize: scaledFontSize)
let attrString = NSAttributedString(string: "Example Text", attributes: [.font: font])
label.setAttributedText(attrString)