
// 右边item的点击事件 - (void)itemAction:(UIBarButtonItem *)sender {
if (!self.isEditing) {
// 允许多个编辑
self.tableView.allowsMultipleSelectionDuringEditing = YES;
// 允许编辑
self.tableView.editing = YES;
[sender setTitle:@"完成"];
}else {
[sender setTitle:@"编辑"];
// 放置要删除的对象
NSMutableArray *deleteArray = [NSMutableArray array];
// 要删除的row
NSArray *selectedArray = [self.tableView indexPathsForSelectedRows];
for (NSIndexPath *indexPath in selectedArray) {
[deleteArray addObject:self.dataSource[indexPath.row]];
}
// 先删除数据源
[self.dataSource removeObjectsInArray:deleteArray];
// 在删除UI
[self.tableView deleteRowsAtIndexPaths:selectedArray withRowAnimation:UITableViewRowAnimationNone];
// 关掉编辑
self.tableView.editing = NO;
}
self.isEditing = !self.isEditing;
}
仅仅需要这一个item响应事件,一个多选的TableView就大功告成了。
//改变cell的选中颜色
cell.tintColor = [UIColor redColor];