Es gibt wahrscheinlich eine lächerlich einfache Lösung dafür (es ist mir fast peinlich, danach zu fragen).Wie NSTextField nach dem Setzen seines String-Wertes zentriert werden kann
Relevante Codeausschnitt aus meiner Sicht Controller:
@IBOutlet weak var textLabel: NSTextField!
@IBAction func getTimeButton(sender: AnyObject) {
let currentDate = NSDate()
let dateFormatter = NSDateFormatter()
dateFormatter.timeStyle = .ShortStyle
textLabel.stringValue = dateFormatter.stringFromDate(currentDate)
}
Bevor Sie die "Get Time" Taste wird die "Drücken Sie die Taste" Label zentriert:
Nach Drücken der Taste wird das Etikett linksbündig:
Label-Attribute:
ich die Etiketten Einschränkungen festgelegt haben, aber die Zwänge scheinen „Reset“, wenn der String-Wert gesetzt zu bekommen.
Wie kann ich das Label nach dem Setzen des String-Wertes zentriert halten?
Ich habe auch versucht, dies zu meinem Controller hinzuzufügen, aber ohne Erfolg:
let textAlignment = NSTextAlignment.CenterTextAlignment
textLabel.alignment = textAlignment
Aktivieren Sie zum Debuggen 'Draws Background', um sicherzustellen, dass mit der Beschriftungsposition nicht etwas Lustiges passiert. – vacawama
Müssen Sie nach dem Festlegen der Ausrichtung möglicherweise 'textLabel.needsDisplay = true' einstellen? –