gpt4 book ai didi

iphone - 在 tableView 中删除行时出现核心数据错误

转载 作者:行者123 更新时间:2023-12-03 19:15:14 26 4
gpt4 key购买 nike

我有一个 UITableViewController 管理分组的 tableView。 tableView 是从 fetchedResultsController 填充的。

如果我单击导航栏中的编辑按钮,然后选择一行并单击删除按钮,该行将被删除,一切顺利结束。

但是,如果我滑动以显示连续的“删除”按钮并单击“删除”按钮,应用程序将崩溃并出现以下错误:

2010-01-06 15:25:18.720 Take10[14415:20b] Serious application error. Exception was caught during Core Data change processing: -[NSCFArray objectAtIndex:]: index (1) beyond bounds (1) with userInfo (null)

2010-01-06 15:25:18.721 Take10[14415:20b] Terminating app due to uncaught exception 'NSRangeException', reason: '*** -[NSCFArray objectAtIndex:]: index (1) beyond bounds (1)'

当然,错误中的索引号会根据我尝试删除行的部分中的行数而变化,并且该数字比尝试删除行后表部分中的剩余行数多 1删除。

这是我尝试从 fetchedResultsController 中删除数据的代码。相同的方法响应这两种情况,所以我不明白为什么它在滑动时崩溃。

- (void)tableView:(UITableView *)tableView commitEditingStyle:(UITableViewCellEditingStyle)editingStyle forRowAtIndexPath:(NSIndexPath *)indexPath {

if (editingStyle == UITableViewCellEditingStyleDelete) {
// Delete the managed object for the given index path
NSManagedObjectContext *context = [fetchedResultsController managedObjectContext];
[context deleteObject:[fetchedResultsController objectAtIndexPath:indexPath]];

// Save the context.
NSError *error = nil;
if (![context save:&error]) {
/*
Replace this implementation with code to handle the error appropriately.

abort() causes the application to generate a crash log and terminate. You should not use this function in a shipping application, although it may be useful during development. If it is not possible to recover from the error, display an alert panel that instructs the user to quit the application by pressing the Home button.
*/
NSLog(@"Unresolved error %@, %@", error, [error userInfo]);
abort();
}
}
}

有什么想法吗???

谢谢

Jk

最佳答案

Jeff LaMarche 在 NSFetchedResultsController 方面做了一些出色的工作。

尝试在这里使用他的模板: http://iphonedevelopment.blogspot.com/2010/01/navigation-based-core-data-application.html

看看这是否能解决您的问题。

关于iphone - 在 tableView 中删除行时出现核心数据错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2017219/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com