我有以下代码。
-(NSDictionary *)getPlayers
{
NSManagedObjectContext *context = self.genkDatabase.managedObjectContext;
NSFetchRequest *fetchRequest = [[NSFetchRequest alloc] init];
NSEntityDescription *entity = [NSEntityDescription entityForName:@"Team"
inManagedObjectContext:context];
fetchRequest.predicate = [NSPredicate predicateWithFormat:@"position ==[c] %@", @"Doelman"];
[fetchRequest setEntity:entity];
NSError *error;
NSArray *fetchedObjects = [context executeFetchRequest:fetchRequest error:&error];
if (fetchedObjects == nil) {
// Handle the error.
}else
for (Team *info in fetchedObjects) {
[_photos setObject:info.image forKey:@"player_imgUrl"];
[_photos setObject:info.name forKey:@"player_name"];
}
NSLog(@"%@",_photos);
return _photos;
但是出于某种原因,我的NSLog总是返回(空)。但是当我这样做时
[_photos setObject:info.image forKey:@"player_imgUrl"];
[_photos setObject:info.name forKey:@"player_name"];
NSLog(@"name: %@",info.name );
NSLog(@"url: %@",info.image );
它返回正确的数据。
有人可以帮忙吗?
亲切的问候。
最佳答案
确保使用以下代码行将_photos字典实例化:
_photos = [[NSMutableDictionary alloc] init];
仅将其定义为实例变量或属性是不够的。
关于objective-c - NSDictionary不会填满,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/12725270/