Я пишу приложение, которое использует UIPickerView и хранит каждое изменение в средствах выбора в основных данных (название приложения - Wizard Blood в магазине iTunes).До сих пор я достиг определенного успеха в том, что мой метод -didSelectRow успешно добавляет новые объекты в базовые данные с помощью следующего кода:
// Get context, entity, managedobject from the fetchedResultsController
[newManagedObject setValue:[NSDate date] forKey:@"timeStamp"];
//Iterates through each component and sets the value to the appropriate key
for (int j=0; j < [LifeCounter numberOfComponents]; j++) {
NSString *keyName = [NSString stringWithFormat:@"lifeTotal%i",j];
[newManagedObject setValue:[NSNumber numberWithInteger:[LifeCounter selectedRowInComponent:j]] forKey:keyName];
}
NSError *error;
if (![context save:&error]) {
NSLog(@"Error saving entity: %@", [error localizedDescription]);
}
Однако в моем -viewDidLoad я не могу получить основные данныезагрузить значения из последнего объекта.Это то, что у меня есть:
lifeCounterArray = [[NSMutableArray alloc] init];
for ( int i = 200; i >= -200; i-- )
{
NSString *myString = [NSString stringWithFormat:@"%i", i];
[lifeCounterArray addObject:myString];
}
//Hopefully this retrieves the latest values from the core data store
NSManagedObject *managedObject = [self.fetchedResultsController objectAtIndexPath:[NSIndexPath indexPathForRow:0 inSection:0]];
//Iterates through each component, setting it to the stored value in core data
for (int j=0; j < [LifeCounter numberOfComponents]; j++) {
NSString *keyName = [NSString stringWithFormat:@"lifeTotal%i",j];
NSInteger row = [[managedObject valueForKey:keyName] integerValue] +180;
[LifeCounter selectRow:row inComponent:j animated:NO];
}
Теперь я почти уверен, что мой метод fetchedResultsController работает, так как я вижу, как он создает объекты (я вижу их в базе данных sqlite), но, возможно, я не должендаже не использовать fetchedResultsController, так как я действительно забочусь только о последнем объекте.Я буду рад опубликовать мой метод fetchedResultsController, если потребуется, заранее спасибо за помощь.