У меня есть сообщение об ошибке ' Завершение приложения из-за необработанного исключения' NSInvalidArgumentException ', причина:' - [__ NSArrayM insertObject: atIndex:]: объект не может быть нулем '
Проблема в fetchedObjects .
Это потому, что он пытается добавить значение, равное нулю, в NSArray. Чего я не понимаю, так это пустого значения.
Для справки: таблица - это имя таблицы моего sqlite, а метка - просто поле моей таблицы.
- (NSMutableArray*) getLabel:(NSString *)label fromTable:(NSString *)table
{
NSMutableArray * ret = [NSMutableArray new];
NSError *error = nil;
NSFetchRequest *fetchRequest = [[NSFetchRequest alloc] init];
NSEntityDescription *entity = [NSEntityDescription entityForName:table
inManagedObjectContext:managedObjectContext];
[fetchRequest setEntity:entity];
NSArray *fetchedObjects = [managedObjectContext executeFetchRequest:fetchRequest error:&error];
Class theClass = NSClassFromString(table);
id info = [[theClass alloc] initWithEntity:entity insertIntoManagedObjectContext:managedObjectContext];
for (info in fetchedObjects)
{
[ret addObject:[info valueForKey: label]];
}
return ret;
}
Хорошая инициализация:
Плохая инициализация:
У вас есть идеи?
Заранее спасибо.