【发布时间】:2014-02-19 03:54:33
【问题描述】:
我已阅读有关此的所有相关帖子,但我仍然遇到错误:
'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).'
以下是详细信息:
在.h 我有一个NSMutableArray:
@property (strong,nonatomic) NSMutableArray *currentCart;
在.m 我的numberOfRowsInSection 看起来像这样:
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
{
// Return the number of rows in the section.
return ([currentCart count]);
}
启用从数组中删除和移除对象:
// Editing of rows is enabled
- (void)tableView:(UITableView *)tableView commitEditingStyle:(UITableViewCellEditingStyle)editingStyle forRowAtIndexPath:(NSIndexPath *)indexPath {
if (editingStyle == UITableViewCellEditingStyleDelete) {
//when delete is tapped
[tableView deleteRowsAtIndexPaths:[NSArray arrayWithObject:indexPath] withRowAnimation:UITableViewRowAnimationFade];
[currentCart removeObjectAtIndex:indexPath.row];
}
}
我认为通过让我的节数依赖于我正在编辑的数组的计数,它可以确保正确的行数?无论如何删除一行时都不必重新加载表,这不能完成吗?
【问题讨论】:
标签: ios objective-c arrays nsmutablearray