Objective c 如何在OSX中以编程方式将桌面背景设置为纯色?

Objective c 如何在OSX中以编程方式将桌面背景设置为纯色?,objective-c,operating-system,Objective C,Operating System,如何以编程方式在OSX桌面上将纯色设置为背景? 已经找到了使用映像以编程方式更改它的方法 [[NSWorkspace sharedWorkspace]setDesktopImageURL:url forScreen:screen options:nil error:&error]; URL-图像文件URL, 屏幕-屏幕对象, 错误-n错误对象 希望避免使用外部资源,如图像文件。 请帮助fwiw我经常想将背景设置为白色,但是缺少特定的颜色,下面的代码应该可以做到 NSError

如何以编程方式在OSX桌面上将纯色设置为背景? 已经找到了使用映像以编程方式更改它的方法

[[NSWorkspace sharedWorkspace]setDesktopImageURL:url forScreen:screen options:nil error:&error];
URL-图像文件URL, 屏幕-屏幕对象, 错误-n错误对象

希望避免使用外部资源,如图像文件。
请帮助

fwiw我经常想将背景设置为白色,但是缺少特定的颜色,下面的代码应该可以做到

    NSError * err;
    NSMutableDictionary < NSWorkspaceDesktopImageOptionKey, id > * m = NSMutableDictionary.dictionary;

    m[NSWorkspaceDesktopImageFillColorKey] = NSColor.whiteColor;
    m[NSWorkspaceDesktopImageScalingKey] = @(NSImageScaleNone);

    // 1x1 png from wikimedia commons
    // may have side effects in a pixel appearing somewhere ....
    // ... couldn't find it though ...
    NSURL * url = [NSBundle.mainBundle URLForResource:@"1x1" withExtension:@"png"];

    [[NSWorkspace sharedWorkspace] setDesktopImageURL:url
                        forScreen:NSScreen.mainScreen
                          options:m
                            error:& err];
    if ( err )
    {
        NSLog ( @"Ooops %@", err );
    }
n错误*err;
NSMutableDictionary*m=NSMutableDictionary.dictionary;
m[NSWorkspaceDesktopImageFillColorKey]=NSColor.whiteColor;
m[NSWorkspaceDesktopImageScalingKey]=@(nsImageScaleOne);
//来自wikimedia commons的1x1 png
//可能对某个地方出现的像素有副作用。。。。
// ... 但是找不到它。。。
NSURL*url=[NSBundle.mainBundle URLForResource:@“1x1”带扩展名:@“png”];
[[NSWorkspace sharedWorkspace]setDesktopImageURL:url
屏幕:NSScreen.mainScreen
选项:m
错误:&错误];
如果(错误)
{
NSLog(@“Ooops%@),err);
}

您可以将颜色更改为味道…

您可以在捆绑包中添加具有该颜色的图像,然后使用
setDesktopImageURL
加载该图像吗?是的,我可以这样做。我正在寻找一个解决方案,我可以忽略捆绑中的图像使用。然后在代码中生成一个纯色图像,将其临时存储在内存中,然后使用上面的函数。