我想要在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