为什么下划线样式不适用于 NSAttributedString?

Why is underline style not working for a NSAttributedString?

我有以下代码来尝试给标签的字符串加下划线。

let attributedString = NSMutableAttributedString(string: "Hello World!")
attributedString.addAttribute(NSAttributedString.Key.underlineStyle, value: NSUnderlineStyle.single, range: NSRange.init(location: 0, length: attributedString.length))
label.attributedText = attributedString

但是,当 运行 代码标签显示 Hello World! 时没有下划线。

我是 运行 Xcode 12.4,使用的是 iOS 14.4 iPhone 12 Pro Max 模拟器。

这似乎是一个错误。将值从 NSUnderlineStyle.single 更改为 1 可解决此问题。

最终代码如下所示。

let attributedString = NSMutableAttributedString(string: "Hello World!")
attributedString.addAttribute(NSAttributedString.Key.underlineStyle, value: 1, range: NSRange.init(location: 0, length: attributedString.length))
label.attributedText = attributedString