Hallo alle zusammen,
ich übe mich gerade in die Core Data ein und versuche ganz einfach Integer (32) darin zu speichern. Bei einem Methodenaufruf soll ein Integer, in Core Data gespeichert, um 1 erhöht werden. Lasse ich es jedoch die Methode einige Male durchlaufen und gebe den Integer aus der Core Data aus, so erscheinnen recht "willkürliche" Werte, die niemals von einer +1 Operation stammen könnten. Ich weiß einfach nicht mehr weiter. Habe schon jegliche Integer "Arten" ausprobiert....
Vielleicht könnt ihr mir ja helfen. Hier noch einige meiner Codestücke:
Alles anzeigen
Vielen vielen Dank.
Nils
ich übe mich gerade in die Core Data ein und versuche ganz einfach Integer (32) darin zu speichern. Bei einem Methodenaufruf soll ein Integer, in Core Data gespeichert, um 1 erhöht werden. Lasse ich es jedoch die Methode einige Male durchlaufen und gebe den Integer aus der Core Data aus, so erscheinnen recht "willkürliche" Werte, die niemals von einer +1 Operation stammen könnten. Ich weiß einfach nicht mehr weiter. Habe schon jegliche Integer "Arten" ausprobiert....
Vielleicht könnt ihr mir ja helfen. Hier noch einige meiner Codestücke:
Quellcode
- -(void) updateAllScore:(NGFExercise*) exercise isRight: (BOOL) isRight
- {
- int addvalue = 1;
- if(!isRight) addvalue = -1;
- Scores *scoreObject = [self getScoreObject];
- if([exercise.type isEqual: ADDITION]) scoreObject.scoreAdd = [NSNumber numberWithInt: [self getAdditionScore] + addvalue];
- [self saveCoreData];
- NSLog(@"%i", [self getAdditionScore]);
- }
- -(int) getAdditionScore
- {
- Scores *scoreObject = [self getScoreObject];
- return (int) scoreObject.scoreAdd;
- }
- -(Scores *) getScoreObject
- {
- //Wichtiger Codeblock zum Funktionieren
- id delegate = [[UIApplication sharedApplication] delegate];
- self.managedObjectContext = [delegate managedObjectContext];
- ///////////
- NSManagedObjectContext *context = [self managedObjectContext];
- NSFetchRequest *fetchRequest = [[NSFetchRequest alloc] init];
- NSEntityDescription *entity = [NSEntityDescription entityForName:@"Scores"
- inManagedObjectContext:context];
- [fetchRequest setEntity:entity];
- NSError *error = [[NSError alloc]init];
- NSArray *fetchedObjects = [context executeFetchRequest:fetchRequest error:&error];
- Scores *scoresObject = [fetchedObjects objectAtIndex:0];
- return scoresObject;
- }
- -(void) saveCoreData
- {
- NSError *error = [[NSError alloc]init];
- NSManagedObjectContext *context = [self managedObjectContext];
- if (![context save:&error]) {
- NSLog(@"Konnte nicht speichern in saveCoreData von NGFScoreHandler %@", [error localizedDescription]);
- }
- }
Vielen vielen Dank.
Nils