强调textreason:
Invalid update: invalid number of rows in section 0.
The number of rows contained in an existing section after
the update (5) must be equal to the number of rows contained in
that section before the update (5), plus or minus the number of
rows inserted or deleted from that section (0 inserted, 1 deleted)
and plus or minus the number of rows moved into or out of that
section (0 moved in, 0 moved out).
***首先抛出调用堆栈
我在尝试删除
时遇到此错误答案 0 :(得分:1)
此错误意味着在删除后更新UITableView时,您用作数据源的阵列尚未更新。
换句话说:
您在UITableViewDelegate的ggtitle(leg[$l,1])
中使用了NSArray dataArray
。
您可以为单元格设置动画以删除该行,但之后您永远不会调用
cellForRowAtIndexPath
因此,当表再次呈现时,UITableView期望有5个项目,但您的数组仍然有6个。
答案 1 :(得分:0)
您的问题不明确,请按以下步骤操作
我认为你不会从你的集合中删除对象,即数组
答案 2 :(得分:0)
试试这段代码。
- (void)tableView:(UITableView *)tableView commitEditingStyle:(UITableViewCellEditingStyle)editingStyle forRowAtIndexPath:(NSIndexPath *)indexPath {
if (editingStyle == UITableViewCellEditingStyleDelete) {
[tableDataArray removeObjectAtIndex:indexPath.row];
[tableView deleteRowsAtIndexPaths:@[indexPath] withRowAnimation:UITableViewRowAnimationFade];
[self.tableView reloadData];
}
}
- (BOOL)tableView:(UITableView *)tableView canEditRowAtIndexPath:(NSIndexPath *)indexPath
{
// Return NO if you do not want the specified item to be editable.
return YES;
}
如需更多参考,请访问here