Dan*_*ood 5 iphone cocoa-touch core-data uikit
我在核心数据/ NSFetchedResultsController上遇到了一些麻烦.我不完全确定错误在哪里,因为消息很模糊.
当获取的结果控制器没有提取任何对象时,我有一个插入多个对象的问题.如果我尝试插入几个没有提取的对象,以下代码将崩溃并出现以下错误.如果我使用它来插入一个对象,它不会崩溃,如果已经提取了对象,它不会崩溃.
崩溃发生在save:方法上.NSArray中的标题,在此示例中,它包含5个字符串.
严重的应用错误.在Core Data更改处理期间捕获到异常:* - [NSCFArray objectAtIndex:]:index(4)超出bounds(1)with userInfo(null)*由于未捕获的异常'NSRangeException'终止应用程序,原因:'*** - [ NSCFArray objectAtIndex:]:index(4)超出bounds(1)'
NSEnumerator *titleEnumerator = [titles objectEnumerator];
NSString *title;
NSMutableArray *tasks = [NSMutableArray array];
Todo *todo;
while(title = [titleEnumerator nextObject])
{
todo = (Todo *)[NSEntityDescription insertNewObjectForEntityForName:@"Todo" inManagedObjectContext:managedObjectContext];
todo.title = title;
todo.state = [NSNumber numberWithInteger:TodoStateIncomplete];
todo.priority = [NSNumber numberWithInteger:TodoPriorityNormal];
todo.timeStamp = [NSDate date];
todo.dueDate = [NSDate distantFuture];
}
NSError *error;
if(![managedObjectContext save:&error])
{
NSLog(@"Unresolved error %@ %@", error, [error userInfo]);
abort();
}
Run Code Online (Sandbox Code Playgroud)
以下是Marcus Zarra(Core Data book的作者)的提示:
"尝试打破objc_exception_throw并查看抛出异常的方法.这应该有助于追踪它"
| 归档时间: |
|
| 查看次数: |
6775 次 |
| 最近记录: |