xcode – 如何通过Interface Builder设置NSButton的文本颜色?

有关如何以编程方式设置文本颜色的几个问题.这一切都很好,但也必须通过Interface Builder来实现.

“显示字体”框用于更改按钮文本的大小,但Xcode忽略使用窗口小部件进行的任何颜色更改,而NSButton的属性检查器没有颜色选择器…

最佳答案 我不知道为什么NSButton还缺少这个.但这是
Swift 4中的替换类:

import Cocoa

class TextButton: NSButton {
    @IBInspectable open var textColor: NSColor = NSColor.black
    @IBInspectable open var textSize: CGFloat = 10

    public override init(frame frameRect: NSRect) {
        super.init(frame: frameRect)
    }

    public required init?(coder: NSCoder) {
        super.init(coder: coder)
    }

    override func awakeFromNib() {
        let titleParagraphStyle = NSMutableParagraphStyle()
        titleParagraphStyle.alignment = alignment

        let attributes: [NSAttributedStringKey : Any] = [.foregroundColor: textColor, .font: NSFont.systemFont(ofSize: textSize), .paragraphStyle: titleParagraphStyle]
        self.attributedTitle = NSMutableAttributedString(string: self.title, attributes: attributes)
    }
}

《xcode – 如何通过Interface Builder设置NSButton的文本颜色?》

《xcode – 如何通过Interface Builder设置NSButton的文本颜色?》

点赞