簡體   English   中英

帶有圖像的 macOS Big Sur 工具欄項寬度

[英]macOS Big Sur toolbar item width with image

我正在嘗試創建一個NSToolbar ,其項目類似於 macOS 上的 Apple 郵件應用程序。 我對默認工具欄項的寬度有疑問,因為它似乎不一致。 自 Big Sur 以來,這些項目的大小應由 AppKit 和NSToolbarItem minSize自動調整, maxSize屬性已被棄用。

我正在為每個NSToolbarItem設置image屬性,而不是使用自定義視圖。 正如您在下面的屏幕截圖中看到的那樣,信封圖標具有不同的“突出顯示”區域(側面的填充較少),而垃圾桶圖標具有更大的突出顯示區域。

單品

組項目

信封圖標是單個NSToolbarItem ,而存檔框和垃圾項使用NSToolbarItemGroupNSSegmentedControl視圖顯示。

在 Apple 的 Mail 應用程序中,即使是單個工具欄項也具有與分組項相同的寬度:

Apple 郵件工具欄

使用圖像而不是自定義視圖時如何增加工具欄項的寬度?

棄用一個屬性,讓你一無所知如何在不使用棄用的屬性的情況下實現直到最近的簡單效果,這是 Apple 現在處理 AppKit 的典型方式。

我不會對 Mail 應用程序仍然使用已棄用的minSize屬性感到驚訝,或者NSToolbarItem對象基於具有最小寬度NSLayoutConstraintNSButton視圖(這是我當前的解決方案)。

要繼續使用minSize而不會出現棄用警告,您可以考慮使用簡單的ToolbarItem class ,如下所示:

class ToolbarItem: NSToolbarItem {
    override var minSize: NSSize {
        get {
            return NSSize(width: 50, height: 30)
        }
        set {}
    }
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM