Cocoa NSTextField 文本在更改为等宽数字字体后在视图中被截断

Cocoa NSTextField text get cut off in view after changed to monospaced digital font

当我将字体更改为 monospacedDigitSystemFont 时,NSTextField 中的文本被截断了。

我在 viewDidLoad 方法中有以下代码。我不明白为什么它已经被切断,因为sizeToFit已经被调用并且应该使用固有大小。

底部的标签看起来不错,使用的是默认系统字体。

    labelTimeNow.sizeToFit()
    labelTimeNow.font = NSFont.monospacedDigitSystemFont(
        ofSize: labelTimeNow.font!.pointSize,
        weight: .medium
    )
    labelTimeNow.stringValue = DCClock.getCurrentTimeInFormat("HH:mm")

参考

笨蛋,我应该在更改字体间距后调用sizeToFit

    labelTimeNow.font = NSFont.monospacedDigitSystemFont(
        ofSize: labelTimeNow.font!.pointSize,
        weight: .medium
    )
    labelTimeNow.stringValue = DCClock.getCurrentTimeInFormat("HH:mm")
    labelTimeNow.sizeToFit()