2015-01-10 24 views
7

Başlık rengini hızlı bir şekilde nasıl değiştirebileceğimi bilmek isterim. Amaç nesnel-c'de çok sayıda örnek gördüm, ancak uygulamanın hızlı olduğunu düşünüyorum. Bir örnek?Swift Mac OSX NSButton Başlık rengi

cevap

19

bunu viewDidLoad veya başka bir yerde deneyin. Swift 3'te

:

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

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

Teşekkürler. 'paragraphStyle = NSMutableParagraphStyle() paragraphStyle.alignment = .center button.attributedTitle = NSAttributedString (dize atalım:: – PhiceDev

+3

Swift 2 size' .CenterTextAlignment' için '.Center' – Sebastian

+3

Swift 3 sürümü değiştirmeniz gerekir "Başlık", öznitelikler: [NSForegroundColorAttributeName: NSColor.red, NSParagraphStyleAttributeName: paragraphStyle]) –

0

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

Xcode 9 hızlı 4 ile henüz bitmedi ve GM de öyle değil, bu değişmeyebilir ama buradaki silahı atladığınızı düşünüyorum – Chris

1

Swift Swift4 yılında üzerine yazmadan sadece istenen özelliğini değiştirir beri ek cevap olarak bu ekledik

4 veya ek olanlar ekleyerek.

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