gpt4 book ai didi

ios - 当我尝试删除 UITableViewCell 时,出现此错误 : Invalid update: invalid number of rows in section 0, 但我似乎无法修复它

转载 作者:行者123 更新时间:2023-11-28 20:20:12 24 4
gpt4 key购买 nike

我在名为 ArticleCell 的 UITableViewCell 子类上有一个手势,因此当它被滑动时,会调用 UITableViewController 类中的一个方法来删除被滑动的单元格。

委托(delegate)方法如下所示:

- (void)swipedToRemoveCell:(ArticleCell *)articleCell {
NSIndexPath *indexPath = [self.tableView indexPathForCell:articleCell];

[self.tableView beginUpdates];
[self.tableView deleteRowsAtIndexPaths:@[indexPath] withRowAnimation:UITableViewRowAnimationAutomatic];
[self.tableView endUpdates];

[self.tableView reloadData];
}

但每次我滑动时,我都会收到此错误:

Invalid update: invalid number of rows in section 0

更多信息:它使用 Core Data 作为数据源,因此它使用 NSFetchedResultsController。我必须在那里更新一些东西吗? (我没有接触过它的任何方法。)

最佳答案

您始终还需要从数据源对象中删除该行。在从 TableView 本身中删除表示数据的行的同时,您需要将其从核心数据存储中删除。

问题是这种不匹配,您从 TableView 中删除了该行,但是您的 -numberOfRowsInTableView 数据源方法仍然返回旧的行数,因为获取的结果 Controller 仍然在数据存储。

关于ios - 当我尝试删除 UITableViewCell 时,出现此错误 : Invalid update: invalid number of rows in section 0, 但我似乎无法修复它,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16349165/

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