在 Swift 中以编程方式将系统图像设置为 NSImageView

Set a system image to NSImageView programatically in Swift

您可以通过UIImage(systemName: "pencil")在UIKit中设置一个系统镜像(SF Symbol)。对于 macOS 应用程序,您可以在故事板中设置系统映像。但是,我找不到以编程方式为 macOS 设置系统映像的方法。那么这是否可能,或者系统图像仅限于 macOS 应用程序中的故事板。

imageView.image = NSImage(named: "pencil") //result is no image

调用签名是 NSImage(systemSymbolName:accessibilityDescription:) (https://developer.apple.com/documentation/appkit/nsimage/3622472-init),而不是 NSImage(named:),它会尝试从您的应用程序包中获取图像,而不是 SF Symbols。

示例:

NSImage(systemSymbolName: "pencil", accessibilityDescription: nil)

请注意,这仅适用于 macOS 11.0 (Big Sur) 及更高版本。在此之前,除了通过 Catalyst,Mac 应用程序无法使用 SF Symbols。