Swift Mac OSX NSButton 标题颜色

Swift Mac OSX NSButton title color

我想知道如何在 swift 中将标题颜色更改为 NSButton,我在 objective-c 中看到了很多示例,但我认为在 swift 中的实现是不同,谁能给我举个例子?

viewDidLoad 或某处试试这个。

在Swift 3:

    let pstyle = NSMutableParagraphStyle()
    pstyle.alignment = .center

    button.attributedTitle = NSAttributedString(string: "Title", attributes: [ NSForegroundColorAttributeName : NSColor.red, NSParagraphStyleAttributeName : pstyle ])

在 Swift4 中

button.attributedTitle = NSMutableAttributedString(string: "Hello World", attributes: [NSAttributedStringKey.foregroundColor: NSColor.white, NSAttributedStringKey.paragraphStyle: style, NSAttributedStringKey.font: NSFont.systemFont(ofSize: 18)])

Swift 4

我将其添加为附加答案,因为它仅更改请求的属性而不会覆盖或添加其他属性。

if let mutableAttributedTitle = button.attributedTitle.mutableCopy() as? NSMutableAttributedString {
    mutableAttributedTitle.addAttribute(.foregroundColor, value: NSColor.white, range: NSRange(location: 0, length: mutableAttributedTitle.length))
    button.attributedTitle = mutableAttributedTitle
}