UICollectionView
。它似乎是这样做的,但我的所有颜色都是空的(黑色)。
以下是代码:
+(void) loadColorsIntoCD
{
NSManagedObjectContext *localContext = [NSManagedObjectContext MR_contextForCurrentThread];
int tag = 0;
float INCREMENT = 0.0625;
for (float hue = 0.0; hue < 1.0; hue += INCREMENT)
{
UIColor *color = [UIColor colorWithHue:hue
saturation:1.0
brightness:1.0
alpha:1.0];
[CatColor MR_createInContext:localContext];
CatColor *thisColor;
thisColor.color = color;
thisColor.isTaken = NO;
tag++;
thisColor.idNumber = [NSNumber numberWithInt:tag];
NSLog(@"ThisColor.idNumber is %@",thisColor.idNumber);
NSLog(@"ThisColor.color is %@",thisColor.color);
[localContext MR_saveToPersistentStoreAndWait];
}
NSLog(@"%i CatColors available", [CatColor MR_countOfEntities]);
}
问题是,我的NSLog正在阅读:
ThisColor.idNumber is (null)
和
ThisColor.color is (null)
然后:
16 CatColors available
我真的很困惑这个值随着循环中的每次迭代而变化,似乎表明正在生成颜色:
color UIDeviceRGBColor * 0x8d83870 0x08d83870
有人可以指出我的错误吗?一天中的大部分时间里,我一直在殴打这件事。
谢谢你的期待。所有人都非常感谢!
答案 0 :(得分:2)
您没有将创建的实体分配给您的本地变量。你应该这样做:
CatColor *thisColor = [CatColor MR_createInContext:localContext];