首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >NSColor有时会变异为NSColorWell

NSColor有时会变异为NSColorWell
EN

Stack Overflow用户
提问于 2012-12-20 01:34:41
回答 1查看 144关注 0票数 0

我有一个处理很多默认值的类,下面是我初始化默认值的方法:

代码语言:javascript
复制
+ (void) initialize
{
    NSUserDefaults* defaults=[NSUserDefaults standardUserDefaults];
    NSData* colorData= [NSKeyedArchiver archivedDataWithRootObject: [NSColor orangeColor]];
    NSDictionary* def= @{ @"colorKey" : colorData, ... };
    [defaults registerDefaults: def];
}

然后,我提供了一个读取默认颜色的方法和一个设置默认颜色的方法:

代码语言:javascript
复制
- (NSColor*) color
{
    NSUserDefaults* defaults=[NSUserDefaults standardUserDefaults];
    NSData* colorData= [defaults objectForKey: colorKey];
    return [NSKeyedUnarchiver unarchiveObjectWithData: colorData];
}

- (void) setColor: (NSColor*) color
{
    NSUserDefaults* defaults=[NSUserDefaults standardUserDefaults];
    NSData* colorData= [NSKeyedArchiver archivedDataWithRootObject: color];
    [defaults setObject:colorData forKey: colorKey];
}

但是如果在color:方法中打印颜色,有时它是NSColorWell类的,它会在应用程序内部造成麻烦。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-12-20 01:53:13

根据https://developer.apple.com/library/mac/#documentation/Cocoa/Reference/ApplicationKit/Classes/NSColorWell_Class/Reference/Reference.html的说法,NSColorWell是一个NSControl,所以看起来您错误地将setColor:调用为NSColorWell实例,而不是NSColor

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/13957948

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档