Mi piacerebbe sapere come cambiare il colore del titolo in un NSButton in modo rapido, ho visto molti esempi in ogg-c ma penso che in fretta l'implementazione sia diversa, qualcuno può fornirmi un esempio?Swift Mac OSX NSButton titolo colore
7
A
risposta
19
provare questo in viewDidLoad
o da qualche parte.
In Swift 3:
let pstyle = NSMutableParagraphStyle()
pstyle.alignment = .center
button.attributedTitle = NSAttributedString(string: "Title", attributes: [ NSForegroundColorAttributeName : NSColor.red, NSParagraphStyleAttributeName : pstyle ])
0
In Swift4
button.attributedTitle = NSMutableAttributedString(string: "Hello World", attributes: [NSAttributedStringKey.foregroundColor: NSColor.white, NSAttributedStringKey.paragraphStyle: style, NSAttributedStringKey.font: NSFont.systemFont(ofSize: 18)])
+0
Xcode 9 con swift 4 non è ancora uscito e non è neanche GM, anche se questo potrebbe non cambiare Credo che tu stia saltando la pistola qui – Chris
1
Swift 4
Ho aggiunto questa come una risposta ulteriore dato che cambia solo l'attributo richiesto senza sovrascrivere o aggiungendone altri.
if let mutableAttributedTitle = button.attributedTitle.mutableCopy() as? NSMutableAttributedString {
mutableAttributedTitle.addAttribute(.foregroundColor, value: NSColor.white, range: NSRange(location: 0, length: mutableAttributedTitle.length))
button.attributedTitle = mutableAttributedTitle
}
Grazie amico che hai fatto la mia giornata !!! – PhiceDev
In Swift 2 è necessario modificare '.CenterTextAlignment' a' .Center' – Sebastian
Swift 3 Versione: 'lasciare paragraphStyle = NSMutableParagraphStyle() paragraphStyle.alignment = .center button.attributedTitle = NSAttributedString (string: "Titolo", attributi: [NSForegroundColorAttributeName: NSColor.red, NSParagraphStyleAttributeName: paragraphStyle]) ' –