我有一个NSMUtableArray,我试图从Core Data存储加载(商店中有有效的数据);这是代码:
[unsortedArray addObject:storedServices.aCustomServices1];
[unsortedArray addObject:storedServices.aCustomServices2];
数组定义为:
@property (nonatomic, retain) NSMutableArray *unsortedArray;
我可以使用有效的静态数据加载数组:
unsortedArray = [NSMutableArray arrayWithObjects:
NSLocalizedString(@"Property1",nil),
NSLocalizedString(@"Property2",nil),nil];
问题是虽然CD存储中存在有效数据,但该数组仍为空。我搜索过Google和SO,但没有发现任何相关内容。为什么我无法从Core Data商店加载?
答案 0 :(得分:2)
我会假装你没有分配unsortedArray
。尝试:
self.unsortedArray = [NSMutableArray array];
[self.unsortedArray addObject:storedServices.aCustomServices1];
[self.unsortedArray addObject:storedServices.aCustomServices2];
这假设您拥有符合正常MRR内存管理实践的unsortedArray
getter / setter方法。这就像使用@synthesize unsortedArray
一样简单(尽管较新版本的clang为你做了这个,我还是会明确地添加它)。
请注意:
self.unsortedArray = [NSMutableArray array];
应该在init
方法中。