Core Data の処理方法に問題がありますNSManagedObjectContext
。
で作成できますNSManagedObject
がNSManagedObjectContext
、値を保存できませんでした。
これが私が得たものです:
_lesson.title = _titleField.text;
int priority = [_priorityField.text intValue];
int difficulty = [_difficultyField.text intValue];
int time = [_timeField.text intValue];
int sortIndex = 0;
if ( time == 0 )
{
sortIndex = 101;
}
else
{
sortIndex = priority * ( difficulty / time );
}
_lesson.priority = [NSNumber numberWithInt:priority];
_lesson.difficulty = [NSNumber numberWithInt:difficulty];
_lesson.time = [NSNumber numberWithInt:time];
_lesson.sortIndex = [NSNumber numberWithInt:sortIndex];
NSError* error = nil;
[[(AppDelegate*)[[UIApplication sharedApplication] delegate] managedObjectContext] save:&error];
保存前のすべてが完全に機能NSLog
しているため、各値が実際に に保存されているかどうかを確認していました_lesson
。
そして_lesson
、ここから送信されます:
if ( [[segue identifier] isEqualToString:@"addLesson"] )
{
LessonViewController* destination = [[LessonViewController alloc]init];
Lesson* lesson = (Lesson*)[NSEntityDescription insertNewObjectForEntityForName:@"Lesson" inManagedObjectContext:_managedObjectContext];
destination.lesson = lesson;
}
else if ( [[segue identifier] isEqualToString:@"editLesson"] )
{
LessonViewController* destination = [[LessonViewController alloc]init];
NSIndexPath* index = [_tableView indexPathForCell:(UITableViewCell*)sender];
[_managedObjectContext deleteObject:[_lessonArray objectAtIndex:index.row]];
Lesson* lesson = (Lesson*)[_lessonArray objectAtIndex:index.row];
destination.lesson = lesson;
}
2 時間デバッグした後、エラーが見つかりません。助けてください!
以下に完全なコードを含めます。
https://www.dropbox.com/sh/eu62ie9svbbqdmm/u1hYUICfjy
それが私の完全なソースコードです。(コピペしてめちゃくちゃ作った。で、Dropbox!)
前もって感謝します。