[英]How to set dark mode for NSToolbar in macOS Catalyst app?
在我的 iOS/macOS 应用程序中,用户可以在浅色和深色外观之间进行选择。
这是通过设置应用程序 window 的 overrideUserInterfaceStyle 来完成的,例如
window.overrideUserInterfaceStyle = .dark
它在 iOS/iPadOS 上运行良好。
在 macOS (Catalyst) 上,应用程序使用 NSToolbar,它始终以系统设置中选择的模式出现,无论为 window 的 overrideUserInterfaceStyle 设置了什么(参见屏幕截图)。
由于这不是一个好的视觉印象,我想知道如何为 NSToolbar 设置亮/暗模式。
将值为Dark
的UIUserInterfaceStyle
添加到应用的 Info.plist。 这将强制整个应用程序在 iOS 13+ 和 Mac Catalyst 上进入暗模式(您不需要设置 overrideUserInterfaceStyle)。
这可以通过添加一个 macOS 插件来完成,该插件可以访问整个 AppKit API。 可以在此处找到说明: 如何从 Mac Catalyst 应用程序访问 AppKit API
然后您可以在运行时在那里设置所需的外观,例如:
NSApplication.shared.appearance = NSAppearance(named: .darkAqua)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.