macos開發-NSButton設置image在某些舊系統上不顯示圖片

場景

  • 點擊按鈕nsbutton顯示選中狀態圖片,再次點擊顯示取消狀態圖片。

出現的問題

  • 設置按鈕背景圖片后,個別系統不顯示按鈕的圖片,但可觸發點擊事件。

解決方法

  • 不使用onoff類型的按鈕,使用switch類型的按鈕即可解決。原因未知。
     lazy var shareScreenBtn: NSButton = {
         let btn = NSButton()
         btn.wantsLayer = true
         btn.image = NSImage.init(named: AppLanguage.shared.local("E_screenshare"))
         btn.alternateImage = NSImage.init(named: AppLanguage.shared.local("E_stopSharing"))
         btn.isBordered = false
         btn.target = self
         btn.action = #selector(shareScreenBtnClick(sender:))
//        btn.setButtonType(NSButton.ButtonType.onOff)  
         btn.setButtonType(NSButton.ButtonType.switch)
         btn.isHidden = true
         return btn
     }()

?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容