iOS 删除UITableView 行的两种方法

删除UITableView 行的两种方法

 

大家都知道,删除行时table会调用其Data Source方法:
- (void)tableView:(UITableView *) tableView commitEditingStyle:(UITableViewCellEditingStyle) 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:UITableViewRowAnimationFade]];

有一点要注意的是:在调用  - (void)deleteRowsAtIndexPaths:(NSArray *) indexPaths  withRowAnimation:(UITableViewRowAnimation) animation前,要先修改数据源,否则程序会出错

你可能感兴趣的:(iOS,UITableView)