Создается исходный объект, вставленный в ManagedObjectContext, и контекст сохраняется. Затем этот объект устанавливается как свойство одноэлементного класса, управляющего стеком CoreData.Исходный объект CoreData имеет неправильный тип.
Этот оригинальный объект, ссылающийся на другой класс, имеет неправильный тип (NSCFString). С другой стороны, если объект извлекается, то он является правильным классом и отлично работает.
NSArray *pdaSetupRecords = [results fetchedObjects];
//If this is the initial launch of the application, create
//a PDASetup object and save the context, otherwise set
//pdaSetup to the fetched instance.
if ([pdaSetupRecords count] < 1) {
PDASetup *newPdaSetup = (PDASetup *) [NSEntityDescription insertNewObjectForEntityForName:@"PDASetup" inManagedObjectContext:managedObjectContext];
[self saveContext];
pdaSetup = newPdaSetup;
NSLog(@"SystemUtility - PDASetup object created and saved.");
} else {
pdaSetup = [pdaSetupRecords objectAtIndex:0];
}
Будет показан только один объект PDASetup, как вы можете видеть. Проблема возникает, когда создается объект PDASetup. Если я запустил приложение, и объект PDASetup будет извлечен, все будет в порядке.
Любые мысли?
pdaSetup сохраняется. –
Вы правы, установив self.pdaSetup исправил проблему, как и другое предложение. Я не понимал, что настрой себя. * Сделал разницу. –
Мне нравится, когда я прав от догадки ... Вам нужно снова прочитать правила управления памятью и использовать @properties. self. * вызывает свойство access/mutator свойства переменной, сохраняя переменную, если вы используете «сохранить» в свойстве. Альтернативно ... начните использовать ARC. – bandejapaisa