我想要在Core Data中存储/保存CGColor。如何在核心数据中存储CGColor?
目前,我存储用浮漂红,蓝,绿颜色等
我需要存储topColor和bottomColor,因为它们是在一个非常简单的梯度图像用于化身的背景。
我目前的版本非常麻烦,需要我将RGB值存储为浮点数。这很麻烦,因为我必须手动传递RGB值;而不是说通过实际的CGColor,然后分手/抓取RGB值。
无论如何,我的问题是如何将cgcolor存储在核心数据中,并欢迎任何支持,帮助或指导将cgcolor值存储在核心数据中的最佳方法。
谢谢。
// My current version follows...
-(void)createColorScheme:(NSManagedObjectContext *)context withName:(NSString *)tColorName
withTopColorRed:(float)tColorRed
withTopColorBlue:(float)tColorBlue
withTopColorGreen:(float)tColorGreen
withBottomColorRed:(float)bColorRed
withBottomColorGreen:(float)bColorGreen
withBottomColorBlue:(float)bColorBlue
{
NSError *error;
ColorScheme *c = [NSEntityDescription insertNewObjectForEntityForName:@"ColorScheme" inManagedObjectContext:context];
[c setName:@"Red"];
[c setTaken:[NSNumber numberWithInt:0]];
[c setTopColorRed:[NSNumber numberWithFloat:tColorRed]];
[c setTopColorBlue:[NSNumber numberWithFloat:tColorBlue]];
[c setTopColorGreen:[NSNumber numberWithFloat:tColorGreen]];
[c setBottomColorRed:[NSNumber numberWithFloat:bColorRed]];
[c setBottomColorGreen:[NSNumber numberWithFloat:bColorGreen]];
[c setBottomColorBlue:[NSNumber numberWithFloat:bColorBlue]];
if (! [context save:&error])
{
NSLog(@"Unresolved Core Data Save error %@, %@", error, [error userInfo]);
exit(-1);
}
c = nil;
}
感谢您的SO链接,我发现这很有用。 – zardon 2011-04-22 08:53:21