删除UITableView 行的两种方法
大家都知道,删除行时table会调用其Data Source方法:
- (void)tableView:(UITableView *) tableView commitEditingStyle:(UITableViewCellEditingSt yle)
editingStyle forRowAtIndexPath:(NSIndexPath *)
indexPath
在该方法中,可以有两种实现:
方法1.修改数据源,然后再[mytable reload],如:
[arr removeObjectAtIndex:indexPath.row];
[mytable reload];
方法2.
调用UITableView的成员方法
- (void)deleteRowsAtIndexPaths:(NSArray *) indexPaths withRowAnimation:(UITableViewRowAnimation) animation
如:
[arr removeObjectAtIndex:indexPath.row];
[mytable deleteRowsAtIndexPaths:[NSArray arrayWithObject:indexPaths withRowANimation:UITableViewRowAnimationF ade]];
有一点要注意的是:在调用 - (void)deleteRowsAtIndexPaths:(NSArray *) indexPaths withRowAnimation:(UITableViewRowAnimation)
animation前,要先修改数据源,否则程序会出错
- (void)tableView:(UITableView *) tableView commitEditingStyle:(UITableViewCellEditingSt
在该方法中,可以有两种实现:
方法1.修改数据源,然后再[mytable reload],如:
[arr removeObjectAtIndex:indexPath.row];
[mytable reload];
方法2.
调用UITableView的成员方法
- (void)deleteRowsAtIndexPaths:(NSArray *) indexPaths withRowAnimation:(UITableViewRowAnimation) animation
如:
[arr removeObjectAtIndex:indexPath.row];
[mytable deleteRowsAtIndexPaths:[NSArray arrayWithObject:indexPaths withRowANimation:UITableViewRowAnimationF
有一点要注意的是:在调用 - (void)deleteRowsAtIndexPaths:(NSArray *) indexPaths